写代码如同写文章,正所谓文如其人,代码可以说是开发者的脸面,写出简洁规范的代码,对个人,团队都是非常重要的,对个人而言,简洁规范的代码不仅体现自己的专业性和技术水平,而且能够赢得别人的赞赏,对团队而言,团队成员遵循统一的规范,能够更好的维护代码库的稳定和谐。
Android是基于Java语言进行开发的,因此说到编码规范,首先要遵循java的编码规范。
Java编码规范
Java编码规范一般包括的关注的主要包括如下几点:
源代码文件的定义
源代码文件以文件内容中的最顶层的Java类命名,而且大小写敏感,文件拓展名为.java,同时,文件的编码格式统一为UTF-8。
源代码文件的结构
一个完整的源代码文件由四部分组成
1 版权信息或者许可证,例如Android Framework的版权声明如下
![](https://img.haomeiwen.com/i8656692/a17aea8815f3ab19.png)
2 Java文件所在package的声明,例如package android.net
3 Java类需要使用到的依赖的引入import语句,一般不建议使用通配符,例如import android.annotation.*,而是应该引入具体的类。同时import 语句要按照相关类型进行分组,不同的组以空行分隔,例如静态导入的类要独立成组,第三方函数库引入的类也要独立成组等
4 Java顶级类的定义,有且只有一个,但可以存在内部类定义,每个类中的成员需要按照某种逻辑进行排序,维护者也需要按照相同的逻辑去添加新的成员,而不是仅仅将新的成员放到最后面,同时,多个重载方法应该按顺序排放在一起,中间不要插入其他方法。
遵循的格式
格式主要涉及代码的排版问题,需要重点关注的主要包括:
1 多使用花括号:例如if else for do while等语句要和花括号一起使用,即使只有一句语句或者是空的,也要加上花括号
2 列字符个数的限制:根据团队内部使用的显示器以及IDE具体问题具体分析,最终目的是代码良好的可阅读性,一般常见的是约定一行80或者100个字符
3 空白的使用:不要把所以的代码都写在一起,需要按照逻辑进行分组,垂直方向的空白原则主要有:a方法体内,语句的逻辑分组之间使用空行 b类里面连续的成员之间加上空行
5 switch语句:switch语句除了要注意缩进,空白的使用之外,如果连续两个case之间明确不需要加break语句时,建议加上//fall through注释,方便代码维护者的理解
![](https://img.haomeiwen.com/i8656692/b3fcf07092027206.png)
6 修饰符的顺序:类和成员的修饰符如果存在多个的话,需要按照java语言规范中的定义排序
![](https://img.haomeiwen.com/i8656692/e00a0f870de7a4d8.png)
命名约定
类的命名遵循大驼峰命名法:UpperCamelCase,而方法名和变量名的命名遵循小驼峰命名法:lowerCamelCase,常量名使用大写字母表示,单词之间以下划线分隔:static final int CONNECTION_TIMEOUT = 1000;
7 Javadoc
![](https://img.haomeiwen.com/i8656692/7487ab8a89889147.png)
Android 命名规范
布局文件的命名
布局文件的命名规则使用“前缀_逻辑名”的方式,单词全部小写,例如:
![](https://img.haomeiwen.com/i8656692/7705f4b157539ef9.png)
资源文件的命名
资源文件的命名规则使用“前缀_模块名_逻辑名称”的方式,单词全部小写,例如:
1 按钮的命名以btn作为前缀。例如btn_login.png,当按钮存在多种形态时,需要加上按钮的形态,例如btn_login_narmal.png,btn_login_pressed.png等
2 图标的命名以ic作为前缀,例如ic_share.png
3 背景图片的命名以bg作为前缀,例如bg_main.png
类的命名
类的命名遵循java的类命名规范,也就是使用大驼峰命名法,同时需要根据类的具体用途引入Android 相关的命名规则
![](https://img.haomeiwen.com/i8656692/e8afe381fca33781.png)
网友评论