Java类文件:
- activity:以activity作为后缀.例如:PersonActivity;
- adapter:以adapter作为后缀.例如:PersonAdapter;
- database:以db作为后缀.例如:PersonDB;
- Entity:以entity作为后缀.例如:PersonEntity;
- so on
资源文件:
layout目录下:
- 页面布局文件:以act_ 为前缀,模块package为中缀,去掉activity后为后缀.例如:Person模块的AddCustomActivity的布局文件命名为:act_person_addcustom.xml
- ListView中的Item布局文件.以item_ 为前缀,列表项的名称为后缀.控件名称为:lvUserList,Item的布局文件命名为:item_lvUserList.xml
- Dialog布局文件.dlg_ 为固定前缀,Dialog的功能名称为后缀.例如:dlg_hint.xml
drawable目录文件下:
- 一个页面共用,用页面前缀;
- 一个模块共用,用模块前缀;
- 全局使用:common
java类中控件对象:
控件类型缩写+控件的逻辑名称:例如:btnLogin;
layout中控件对象:
建议和activity中相对应的控件名称保持一致.例如:R.id.btnLogin;
strings.xml中常量:
所在activity名称 + 控件名称 + 功能/描述,例如:loginActivity_btnLogin_text;
拆分Strings.xml:
strings_ + 模块名称,例如: strings_module_a.xml;
常量名称:
只能包含之母和下划线,字母全部大写并用链接;
Androidb编码规范
Activity中的onCreate:是设计模式中单一职责原则的体现.
initVariables():初始化变量.
initView():初始化控件
loadData():初始化数据坚持使用fastJSON自定义实体来作为MobileAPI的数据载体.
- 页面之间传值,坚持使用Intent携带序列化实体数据的方.禁止为了省事使用全局变量进行传值.
- 为控件添加事件,初始化下面就直接添加事件.
- activity中不能使用嵌套的内部类
Adapter规范:
统一放在adapter这个包中.
adapter绑定数据,一律为ArrayList;
adapter创建适合于自身列表的ViewHolder实体类,统一命名为ViewHolder.
不同模块的实体类不能共享.
为节省内存,请使用ArrayList,而不是HashMap
-图片的处理,统一使用ImageLoader/fresco
- SharedPreferences保存简单配置信息,对于复杂的对象,还是要存储到本地文件中
数据类型转换一定要进行校验.失败要有默认值,使用try-catch保护,避免空指针
使用常量来代替枚举类型