为了有利于项目维护、增强代码可读性、提升 Code Review 效率以及规范团队安卓开发,故提出安卓开发规范。以下是本人一些工作中需要注意的,还有一些官方的规范,有一篇文章,有详细的叙述,大家有时间可以去学习一下。https://www.jianshu.com/p/45c1675bec69
一、编码命名规范
1、编码格式统一为 UTF-8;
2、编辑完 .java、.xml 等文件后一定要按照规范(开发规范或者默认规范)去格式化文件。
3、设置删除多余的 import,减少警告出现;
4、代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。
5、包名全部小写,连续的单词只是简单地连接起来,不使用下划线,采用反域名命名规则。一级包名是顶级域名,通常为 com
、edu
、gov
、net
、org
等,二级包名为公司名,三级包名根据应用进行命名。
6、类名都以 UpperCamelCase
风格编写,采用大驼峰命名法,首字母大写。测试类的命名以它要测试的类的名称开始,以 Test 结束。接口以 I 为前缀。
7、方法名都以 lowerCamelCase
风格编写,采用小驼峰命名法,首字母小写。
8、常量,是一个 static final
字段,名命名模式为 CONSTANT_CASE
,全部字母大写,用下划线分隔单词。
9、变量,非公有且非静态字段命名以 m
开头,静态字段命名以 s
开头,其他字段以小写字母开头。
10、对于表示集合或者数组的非常量字段名,我们可以添加后缀来增强字段的可读性,集合添加如下后缀:List、Map、Set,数组添加如下后缀:Arr。如果数据类型不确定的话,使用其复数形式来表示也可以。
二、代码样式规范
1、使用标准大括号样式:左大括号不单独占一行,与其前面的代码位于同一行。
2、类成员的顺序:
- 常量
- 字段
- 构造函数
- 重写函数和回调
- 公有函数
- 私有函数
- 内部类或接口
3、组件重写函数:按照他们的生命周期进行排序。
4、行长限制:代码中每一行文本的长度都应该不超过 100 个字符。
5、换行:赋值操作符(参数隔开符 , )换行放在上一行行尾;操作符(包括点方法 . )换行放在下一行的行首。【注意,在上一行行尾删掉空格】
6、类注释:在 AS 中自己配制,进入 Settings -> Editor -> File and Code Templates -> Includes -> File Header,输入:(这样便可在每次新建类的时候自动加上该头注释)
/**
* <pre>
* author : ${USER}
* time : ${YEAR}/${MONTH}/${DAY}
* desc :
* version: 1.0
* </pre>
*/
7、每一个成员方法(包括自定义成员方法、覆盖方法、属性方法)的方法头都必须做方法头注释,在方法前一行输入 /** + 回车
或者设置 Fix doc comment
(Settings -> Keymap -> Fix doc comment)快捷键,AS 便会帮你生成模板。
8、块注释,块注释与其周围的代码在同一缩进级别。它们可以是 /* ... */
风格,也可以是 // ...
风格(//
后最好带一个空格)。对于多行的 /* ... */
注释,后续行必须从 *
开始, 并且与前一行的 *
对齐。
最后介绍一下代码规范检查工具的使用:CheckStyle
1、安装Checkstyle插件:File --> setting --> plugins,搜索CheckStyle安装,重启AS。
2、打开checkstyle控制面板:File --> setting --> tools --> checkstyle
3、使用checkstyle:
修改警告