一个项目是团队合作开发的,规范的命名有助于团队开发者们的阅读和修改,统一规范,有效提高开发效率。另外,审核一个程序员的编程水平的时候,命名规范也是一大标准,所以,下面我就总结下我从网上别人的经验和自己的感悟中收集总结的android命名规范。
命名规范
1、包(packages)
采用反域名命名规则,全部使用小写字母。
com.ysten.videoplus.client.core.presenter
2、类(classes)
采用大驼峰命名法(所有单词的第一个字母大写),尽量避免缩写。
LoginPresenter
MainActivity
3、接口(interface)
采用大驼峰命名法,接口名称以 I 开头
public interface IUserCenter {
//超级登录
@POST("userservice/user/superlogin")
Call<UserBean> userSuperLogin(@QueryMap Map<String,String> map);
}
4、方法(methods)
小驼峰命名法(除首单词外,其余所有单词的第一个字母大写)
onCreate()
initView()
5、参数(parameter)
小驼峰命名法
phoneNum
code
baseCallBack
6、变量(variables)
小驼峰命名法
private String mPhoneNum;
private String mCode;
7、 常量(constants)
全部大写,单词之间用下划线分割
public String TEMPLATE_ID = "51000004";
public final String TEMPLATE_ID = "51000004";
public static final String TEMPLATE_ID = "51000004";
8、资源文件
全部小写,采用下划线命名法,加前缀区分
1、layout布局
activity_load_window.xml
fragment_toolbar_layout.xml
dialog_hint.xml
2、有多种形态如按钮等如:btn_xx.xml(selector)
名称 | 功能 |
---|---|
btn_xx | 按钮图片使用btn_整体效果(selector) |
btn_xx_normal | 按钮图片使用btn_正常情况效果 |
btn_xx_press | 按钮图片使用btn_点击时候效果 |
btn_xx_select | 按钮图片使用btn_选中时候效果 |
3、 layout中的id命名
控件 | 缩写 |
---|---|
LinearLayout | ll |
RelativeLayout | rl |
ImageView | iv |
EditText | et |
Button | btn |
TextView | tv |
例如,tv_title,btn_commit
编码规范
代码中尽量不要出现中文。注释和除外。代码中通过strings.xml引用来显示中文。
控件声明放在activity级别,这样在activity其他地方可以使用。
在一个View.OnClickListener中处理所有的点击事件逻辑,这样看起来很集中和直观。
strings.xml中使用%1sd等实现字符串的通配。
布局文件中的字体大小,都定义在dimens.xml中。
有关margin和padding的值也都放在dimens.xml中。
界面之间传值尽量使用intent方式。少用全局变量。
不建议在布局文件中添加点击事件。
数据类型转换一定要校验。
使用常量代替枚举。
实体不要在不同模块间共享,但是可以在统一模块下的不同页面共享。
建议采用左括号与方法名称在同一行的代码格式来进行代码的编写和格式化。貌似左括号在下一行是C#的形式。
业务稍微复杂一些,都有可能提炼一个BaseActivity或BaseFragment出来做为公共父类。
类注释一定要写,管家的方法也要写方法注释。常量尽量写注释。