作为一个很重度的强迫症患者,写代码的时候经常会为文件命名纠结一会儿,为了解决这个问题同时也使得项目看起来更加有条例,出BUG的或者找文件的时候不会一团乱麻,在网上找了一些文章,各种Copy自己整理了一下。
先分享这几篇文章:
- http://blog.csdn.net/crazy1235/article/details/51346027
- http://blog.tinyx.cc/android-naming.html
- 阿里技术下载的 Java 开发手册
几种命名法
驼峰命名法:又称小驼峰命名法。除了首个单词首字母小写除外,其余所有单词所有首字母都要大写。
帕斯卡命名法:又称大驼峰命名法。所有单词首字母大写。
下划线命名法:单词与单词间用下划线做间隔。
JAVA In Android
包名 采用反域名命名规则,全部使用小写字母。一级包名为地顶级域名如com,二级包名为xx(可以是公司或则个人的随便),三级包名根据应用进行命名,四级包名为模块名或层级名; 如 com.tinyx.myapp.activities;
类名 用Pascal命名法,尽量避免缩写,如:MyActivity;缩写是众所周知的,如HTML,URL;类名称中包含单词缩写,则单词缩写的每个字母均应大写,如:PublicHTML,CommonURL。
方法名 动词或动名词
- 初始化相关方法,使用init为前缀标识,如:初始化布局initView();
- boolean型使用is或check为前缀标识, 如:checkValue()、isValidate();
- 返回某个值的方法,使用get为前缀标识,如:getName();
- 数据进行处理相关,尽量使用process为前缀标识,如:processUpdate();
- 保存数据相关,使用save为前缀标识,如:saveData();
- 对数据重置的,使用reset前缀标识,如:resetData();
- 清除数据相关,使用clear前缀标识,如:clearData();
- 移除某些项目,使用remove前缀标识,如:removeItem();
- 绘制数据或效果相关的,使用draw前缀标识,如:drawCircle();
- 变量 采用帕斯卡命名法,建议采用有意义的命名 简单易懂
- 模型类变量 帕斯卡命名法
- 非模型类全局参数建议加上小写m开头 (Activity/Fragment 中的变量)
- 常量 全部大写,采用下划线命名法( MAX_COUNT)
- 空间变量 建议采用 控件缩写 + 控件逻辑名称 例:btnLogin
资源文件(Res)
遵循一个基本原则 是什么 - 在哪里会被使用 - 用来干什么 - 其他说明
- drawable
图标类 如:ic_login_logo
图片类(背景图) 如: bg_splash
selector 如:selector_login_btn
状态类 如:bg_login_btn_pressed
- layout
Activity 和 Fragment 省略
局部布局View文件 如:view_main_header
列表项(list) 如:fragment_user_list_item
自定义对话框 如:dialog_alert
anim 在哪里 -- 变化的控件 -- 动画 -- 方向 如:main_button_fade_in
menu 通常一个页面不会有多个menu 所以就直接写Activity 或者 Fragmen 名称 如:main_activity / user_fragment
values 在哪里 -- 是什么
dimens 下划线命名法 activity_vertical_padding huge_textsize
strings 下划线命名法
styles 下划线命名法
colors 驼峰命名法
attrs 驼峰命名法
控件名称 | 缩写 | 控件名称 | 缩写 |
---|---|---|---|
TextView | tv | Button | btn |
ImageButton | img | CheckBox | cb_sex |
RadioButton | rbtn | EditText | et |
RadioButton | rbtn | WebView | wv |
ToggleButton | toggle | ProgressBar | pb |
ScrollView | sv | ListView/RecyclerView | lv |
控件的命名
控件命名 : 通常是 控件缩写_ 在哪里_干什么的(语意) 例: tv_main_title\ btn_user_add
控件名称 | 缩写 | 控件名称 | 缩写 |
---|---|---|---|
TextView | tv | Button | btn |
ImageButton | img | CheckBox | cb_sex |
RadioButton | rbtn | EditText | et |
RadioButton | rbtn | WebView | wv |
ToggleButton | toggle | ProgressBar | pb |
ScrollView | sv | ListView/RecyclerView | lv |
其他补充
- 使用Strings / dimen / colors / 尽量不要在代码中出现 中文 字体大小 颜色等东西
- 不要在布局文件中添加点击事件
- if / for / while / switch / do 等保留字与括号之间要加一个空格
- 任何二目、三木运算符的左右两边都要加空格
- 未完待续。。。