一,开发规范
1.开发前注意事项:
(1).必须加注释,类,方法,关键语句
2.编码前应该把成员区块区分。
大致顺序自上而下
- 常量声明区
- UI控件成员变量声明区
- 普通成员变量声明区
- 内部接口声明区
- 初始化相关方法区
- 事件响应方法区
- 普通逻辑方法区
- 重载的逻辑方法区
- 发起异步任务方法区
- 异步任务回调方法区
- 生命周期回调方法区(出去onCreate()方法)
- 内部类声明区
3.独立的小功能完成后就要提交代码,提交代码要用指定的格式,注释一定要写清楚,别人也要能看懂。
4.不用的代码要删除(暂时隐藏的功能除外)
5.第三方依赖要写到具体的模块。不要都依赖到最底层的模块(仅用于模块化开发)
6.常量字符串命名最好按业务分组管理。
7.尽量少用if()else,使用if(){return}
8.如果方法中使用throw异常处理,方法必须有异常声明
二,命名规范
1.包名:包名全部小写,不要使用下划线。采用反域名规则。一级包名com,二级包名为(一般为公司名称).三级包名根据应用命名,四级域名为模块名称。比如com.xxx.taobao.l
例如
页面用到的Activity类 (activitie层级名用户界面层):com.xx.应用名称.activitie
公用类:com.xx.应用名称.base
页面用到的Adapter类 (适配器的类):com.xx.应用名称.adapter
公共工具方法类(util模块名):com.xx.应用名称.util
实体类(数据模型类):com.xx.应用名称.model 或bean
数据库操作类:com.xx.应用名称.db
自定义的View类等:com.xx.应用名称.view或widget
Service服务:com.xx.应用名称.service
BroadcastReceiver服务:com.xx.应用名称.receiver
2.类名
类名都以ClassClassClass风格编写。类名一般是名词。接口名词一般是形容词,方法名称一般使用驼峰命名。
例如:
Activity/Fragment类,已Activity为标识或者Act为标识,MainAct/MainActivity /Fm
Adapter类:已Adapter为后缀标识
工具方法类:Util或Manager为后缀,日志工具类:LogUtil
数据库类:以Db或者DbHelper为后缀
自定义的共享基础类:Base开头 BaseActivity,BaseFragment
如果项目采用MVP,所有Model、View、Presenter的接口都以I为前缀,不加后缀,其他的接口采用上述命名规则
3.方法名
方法名都已驼峰命名规则,
initXX()初始化
getXX()返回值
saveXX()保存
resetXX()对数据重组
clearXX()清除数据相关的
removeXXX() 清除数据相关的
drawXXX()绘制画布
4.常量名
1.常量名模式CONSTANT_CASE全部为大写
5. 资源文件命名规范
1.全部小写,采用下划线命名法 所有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
5.包含项命名:模块_(位置)描述.xml
例如:activity_main_head.xml
、activity_main_bottom.xml
注意:通用的包含项命名采用:项目名称缩写_描述.xml
例如:xxxx_title.xml
6.资源文件(图片drawable文件夹下)
全部小写,采用下划线命名法,加前缀区分 命名模式:可加后缀 _small
表示小图, _big
表示大图
7.values中name命名
1.strings:strings的name命名使用下划线命名法,采用以下规则:模块名+逻辑名称
2.colors:colors的name命名使用下划线命名法
3.styles:styles的name命名使用Camel命名法,采用以下规则:模块名+逻辑名称
8. layout中的id命名
控件类型缩写 + 下划线 + 控件逻辑名称,比如登录按钮 btn_login.
LayoutView 缩写lv 比如个人中心 lv_info;