Android 命名规范
标识符命名法
标识符命名法最要有四种:
- 驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写。
- 帕斯卡(pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写
- 下划线命名法:单词与单词间用下划线做间隔。
- 匈牙利命名法:广泛应用于微软编程环境中,在以Pascal命名法的变量前附加小写序列说明该变量的类型。 量的取名方式为:
<scope_> + <prefix_> + <qualifier>
范围前缀,类型前缀,限定词。
尽可能的用最少的字符而又能完整的表达标识符的含义。
英文缩写原则:
- 较短的单词可通过去掉“元音”形成缩写
- 较长的单词可取单词的头几个字母形成缩写
- 此外还有一些约定成俗的英文单词缩写
下面为常见的英文单词缩写:
名称 | 缩写 |
---|---|
icon | ic |
color | cl |
divider | di |
selector | sl |
background | bg |
image | img |
password | pwd |
position | pos |
TextView | tv |
ImageView | iv |
EditText | et |
注意: 单词缩写原则:不要用缩写,除非该缩写是约定俗成的。
命名规范
包
采用反域名命名规则,全部使用小写字母。一级包名为com,二级包名为xx(可以是公司或则个人的随便),三级包名根据应用进行命名,四级包名为模块名或层级名。
包名 | 此包中包含 |
---|---|
包名.activities | Activity类 |
包名.base | 自定义基类 |
包名.adapter | Adapter类 |
包名.tools | 公共工具方法类 |
包名.bean | 包中包含:实体类 |
包名.view (或 widget) | 自定义的View类等 |
包名.service | Service服务 |
… | … |
类
采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的,比如 HTML , URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应大写。
类 | 描述 | 例如 |
---|---|---|
activity | Aty或者Activity为后缀标识 | WelcomeAty.或者WelcomeActivity |
Adapter | Adapte 为后缀标识 | NewsAdp或NewsAdapter |
基础类 | 以Base开头 | BaseActivity,BaseFragment |
公共方法类 | Tools或Manager为后缀标识 | ThreadPoolManager, LogTools |
Service | 以Service为后缀标识 | TimeService |
… | … | … |
方法
动词或动名词,采用小驼峰命名法例如: onCreate(), run()
变量
采用小驼峰命名法。类中控件名称必须与xml布局id保持一致。
用统一的量词通过在结尾处放置一个量词,就可创建更加统一的变量,它们更容易理解,也更容易搜索。例如,请使用 strCustomerFirst
和 strCustomerLast
,而不要使用 strFirstCustomer
和 strLastCustomer
。
常量
全部大写,采用下划线命名法.例如:MIN_WIDTH
资源文件
全部小写,采用下划线命名法,加前缀区分
名称 | 功能 |
---|---|
btn_xx |
按钮图片使用btn_整体效果(selector) |
btn_xx_normal |
按钮图片使用btn_正常情况效果 |
btn_xx_press |
按钮图片使用btn_点击时候效果 |
bg_head |
背景图片使用bg_功能_说明 |
ic_more_help |
图标图片使用icon_功能_说明 |
… | … |
资源ID
大小写规范与方法名一致,采用小驼峰命名法。命名规范为“资源控件的缩写 名”+“变量名”。注意:页面控件名称应该和控件id名保持一致
layout中的id命名
命名模式为:view缩写_模块名称_view的逻辑名称
控件 | 缩写 |
---|---|
RelativeView | rv |
TextView | tv |
Button | btn |
ImageView | iv |
ProgressBar | pb |
… | … |
注意: 如果layout文件很复杂,建议将layout分成多个模块,每个模块定义一个moduleViewHolder,其成员变量包含所属view
styles.xml
将layout中不断重现的style提炼出通用的style通用组件,放到styles.xml中