Android命名规范

Java类文件:

  • activity:以activity作为后缀.例如:PersonActivity;
  • adapter:以adapter作为后缀.例如:PersonAdapter;
  • database:以db作为后缀.例如:PersonDB;
  • Entity:以entity作为后缀.例如:PersonEntity;
  • so on

资源文件:

layout目录下:
  1. 页面布局文件:以act_ 为前缀,模块package为中缀,去掉activity后为后缀.例如:Person模块的AddCustomActivity的布局文件命名为:act_person_addcustom.xml
  2. ListView中的Item布局文件.以item_ 为前缀,列表项的名称为后缀.控件名称为:lvUserList,Item的布局文件命名为:item_lvUserList.xml
  3. 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保护,避免空指针
    使用常量来代替枚举类型