推荐阅读:Android基础入门教程
标识符命名法
标识符命名法主要有4种:
- 驼峰式(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写。
- 帕斯卡(Pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写。
- 下划线命名法:单词与单词间用下划线做间隔。
- 匈牙利命名法:广泛应用于微软编程环境中,在以Pascal命名法的变量前附加小写序列说明该变量的类型。
代码部分命名规范
1. 包名(Package):
通常采用反域名命名规则,全部使用小写字母。一级包名二级包名为反域名,三级包名根据应用进行命名,四级包名为模块名或层级名。
包名 | 描述 |
---|---|
com.xxx.app.activity | Acitivity类。 |
com.xxx.app.base | Activity的基础共享类。 |
com.xxx.app.service | Service服务类。 |
com.xxx.app.receiver | BroadcastReceiver广播接受类。 |
com.xxx.app.adapter | Adapter适配器。 |
com.xxx.app.bean | JavaBean元素类。 |
com.xxx.app.tools | Tools工具类。 |
com.xxx.app.database | 数据库操作类。 |
com.xxx.app.view | 自定义的View类。 |
2. 类名(Class):
名词,采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的, 比如HTML,URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应大写。
类 | 描述 | 举例 |
---|---|---|
Activity类 | 以Acitvity为后缀标识 | 例如:MainActivity,HomeActivity |
Service类 | 以Service为后缀标识 | 例如:MusicService |
BroadcastReceiver类 | 以Recriver为后缀标识 | 例如:TimeReceiver |
Adapter类 | 以Adapter为后缀标识 | 例如:ListDataAdapter |
数据库类 | 以DBHelper为后缀标识 | 例如:NewsDBHelper |
3. 接口(Interface):
命名规则与类一样采用大驼峰命名法,多以able或ible结尾,如interface Runnable;interface Accessible 。
4. 方法(Method):
动词或动名词,采用小驼峰命名法例如:onCreate(),run()。
方法 | 说明 |
---|---|
initXX() | 初始化相关方法,以init为前缀标识。例如:initView(),initData() |
getXX() | 取值方法,以get为前缀标识 |
setXX() | 赋值方法,以set为前缀标识 |
isXX() | 判断方法,以is为前缀标识,返回值为boolean型 |
saveXX() | 保存数据相关方法,以save为前缀标识 |
cleanXX() | 清除数据相关方法,以clean为前缀标识 |
5. 变量(Variable):
采用小驼峰命名法。
类中控件命名规范:
- 描述+控件类型缩写 例如:TextView nameTV;(推荐:继承类的命名思路,将类型后置)
- 描述+控件类型全称 例如:TextView nameTextView;
- 控件类型缩写+描述 例如:TextView tvName;
6. 常量(Constant):
全部大写,采用下划线命名法。例如:FLAG_PASS;
资源部分命名规范
1. 布局文件(Layout):
全部小写,采用下划线命名法。
布局 | 格式 | 举例 |
---|---|---|
Activity | activity_描述 | 例如:activity_main |
Dialog | dialog_描述 | 例如:dialog_message |
PopupWindow | popup_描述 | 例如:popup_message |
Fragment | fragment_[父级布局]_描述 | 例如:fragment_content,fragment_main_content |
List | listitem_[父级布局]_描述 | 例如:listitem_text,listitem_main_text |
ViewPager | pager_[父级布局]_描述 | 例如:pager_home,pager_main_home |
Include | include_[父级布局]_描述 | 例如:include_info,include_main_info |
2. 图片资源(Drawable):
类型 _ 描述 _ [状态]。
- 图标类,添加ic前缀
- 背景类,添加bg前缀
- 分隔类,添加div前缀
- 默认类,添加def前缀
- 区分状态时,普通状态,添加normal后缀
- 区分状态时,按下时的状态,添加pressed后缀
- 区分状态时,选中时的状态,添加selected后缀
- 区分状态时,不可用时的状态,添加disable后缀
- 多种状态的,添加selector后缀(一般为ListView的selector或按钮的selector)
2. 资源ID(Resources ID):
控件缩写 _ 范围_ 描述,范围可选,只在有明确定义的范围内才需要加上。
<!-- 这是的标题 -->
<TextView
android:id="@+id/tv_title"
... />
<!-- 这是登录按钮 -->
<Button
android:id="@+id/btn_login"
... />