1.编码格式
源文件编码格式为 UTF-8。
2.列字符个数限制
a.80个字符的列限制,除了下述例外,任何一行如果超过这个字符数限制,必须自动换行。
b.不可能满足列限制的行(例如,Javadoc中的一个长URL,或是一个长的JSNI方法参考)。
c.package和import语句
3.包名统一用小写
公司所有项目必须以(com.jumper)为包名前缀
如:com.jumper.hospitaldoctor
4.类名
类名都以UpperCamelCase风格编写。采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的,比如HTML,URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应大写
Activity 类 Activity为后缀标识
如:欢迎页面类WelcomeActivity
Adapter类 Adapter 为后缀标识
如:新闻详情适配器 NewDetailAdapter
工具方法类 Util或Manager为后缀标识
如:(与系统或第三方的Utils区分)或功能+Util线程池管理类:ThreadPoolManager
日志工具类:LogUtil(Logger也可)
打印工具类:PrinterUtil
数据库类 DBHelper后缀标识
如:新闻数据库:NewDBHelper
Service类 Service为后缀标识
如:时间服务TimeServiceBroadcast
Receiver类 Receiver为后缀标识
如:推送接收JPushReceiver
ContentProvider Provider为后缀标识
自定义的共享基础类 Base开头
如:BaseActivity,BaseFragment
5.常量名
全部字母大写,用下划线分隔单词。
如:public static final int DEFAULT_TIME_OUT = 1000;
6.非常量字段名
a.非公有,非静态字段命名以m开头。
如:private Context mContext;
int mClickPosition;
b.静态字段命名以s开头。
如:private static boolean sIsActivite;
c.公有静态字段(全局变量)命名以g开头
如:public static UserInfo gUserInfo;
d.其它Type 类型
字符串添加如下后缀:Str
集合添加如下后缀:List、Map、Set
数组添加如下后缀:Arr
如:
String mPhoneStr;
private List mFHRDataList;
7.方法名
方法名都以 LowerCamelCase 风格编写。
方法名通常是动词或动词短语。
initXX() 初始化相关方法,使用init为前缀标识,如初始化布局initView()
isXX() checkXX() 方法返回值为boolean型的请使用is或check为前缀标识
getXX() 返回某个值的方法,使用get为前缀标识
handleXX() 对数据进行处理的方法,尽量使用handle为前缀标识
displayXX()/showXX() 弹出提示框和提示信息,使用display/show为前缀标识
saveXX() 与保存数据相关的,使用save为前缀标识
resetXX() 对数据重组的,使用reset前缀标识
clearXX() 清除数据相关的
removeXXX() 清除数据相关的
drawXXX() 绘制数据或效果相关的,使用draw前缀标识
另:
@Override:能用则用
只要是合法的,就把@Override注解给用上。
8.资源文件命名规范
a.资源布局文件(XML文件(layout布局文件)):
全部小写,采用下划线命名法
1) contentview 命名
必须以全部单词小写,单词间以下划线分割,使用名词或名词词组。
所有Activity或Fragment的contentView必须与其类名对应,对应规则为:
将所有字母都转为小写,将类型和功能调换(也就是后缀变前缀)。
例如:activity_main.xml
2) Dialog命名:dialog_描述.xml
例如:dialog_hint.xml
3) PopupWindow命名:ppw_描述.xml
例如:ppw_info.xml
4) 列表项命名:item_描述.xml
例如:item_city.xml
b.values中name命名
strings、colors 的name命名使用下划线命名法,采用以下规则:
模块名+activity/fragment/item+逻辑名称
如:health_activity_main_title 健康主页标题
styles的name命名使用 Camel命名法,采用以下规则:
通用的 类别.属性.属性
如:textview.size_16.color_666666
非通用的 模块名+逻辑名称
如:main_timeDialog
9.UI控件缩写表
LinearLayout ll llFriend
RelativeLayout rl rlMessage
FrameLayout fl flCart
Button btn btnHome
ImageButton ibtn btnPlay
TextView tv tvName
EditText et etName
ListView lv lvCart
ImageView iv ivHead
GridView gv gvPhoto
10.常见的英文单词缩写:
名称缩写
icon ic (主要用在app的图标)
color cl(主要用于颜色值)
divider di(主要用于分隔线,不仅包括Listview中的divider,还包括普通布局中 的线)
average avg
background bg(主要用于布局和子布局的背景)
buffer buf
control ctrl
delete del
document doc
error err
escape esc
increment inc
infomation info
initial init
image img
Internationalization I18N
length len
library lib
message msg
password pwd
position pos
server srv
string str
temp tmp
window wnd(win)
摘自:http://www.jianshu.com/p/0a984f999592