Android编码规范

来源:互联网 发布:java回调机制是异步 编辑:程序博客网 时间:2024/05/21 07:18

根据谷歌官方和自己的经验写了一些。

补充Android代码建议

1.      import foo.Bar;导入架包使用全路径,这样可以增加代码的可读性。

2.      创建的类和接口必须要写名该类的作用

/**
 * Does X and Y and provides an abstraction for Z.
 */


public classFoo {
    ...
}

3.      代码中不允许出现相同的代码来实现同一个功能,应该封装为方法或者静态方法。下次修改只需要修改一处。

4.      公有的方法应该要以第三人称的视角对方法进行描述比如:

/**Returns the correctly rounded positive square root of a double value. */
static double sqrt(double a){
    ...
}

or

/**
 * Constructs a new String by converting the specified array of
 * bytes using the platform's default character encoding.
 */

public String(byte[] bytes){
    ...
}

5.      编写较短的方法,编写方法的原则是封装性和针对性。但并不是绝对的,如果方法的代码超过40行,可以在不影响程序的情况下,将方法拆分。可以使用快捷键,选择要拆分的代码CTRL+1选择extract method,提取成方法。

6.      定义字段和变量是应该在文件的前面,或者在紧接着要使用该字段或变量的方法上面。

具有类似配置功能的参数应该要定义在一起。

7.      控制变量的范围

7.1局部变量能完成的,不使用全局变量。提高效率的同时,还能避免出错。

8. 使用TODO关键来注释,比如你关闭了客户端密钥的校验时,必须要写

//TODO 发布时打开密钥校验

9.不能捕获异常而不做处理,比如

void setServerPort(String value){
    try {
        serverPort = Integer.parseInt(value);
    } catch(NumberFormatException e){ }
}

至少要打印出错误的日志,否则会给后期调试带来很多不便。


11.日志输出

a提交的代码中不能出现system.out这样的输出语句。

c.日志的TAG可以不写,但最好不要写类名,写了类名混淆就没有意义了。可以把相同的操作比如网络请求,网络返回统一作为TAG,同一个相同逻辑的用一个TAG。比如用户行为统计,数据校验等。

d.整个流程必须经过日志的说明。简单的说就是可以通过日志还原重要逻辑。以便后期定位问题和前期开发时思路的正确性。

Ex

e.网络发送数据与接收到的数据一定要打印

 

 

12. 使用Android库或者模式出现deprecated的时候,已有的代码可以继续使用弃用的库或者模式,但是开发新的组件或者项目时,使用新的库或者模式。

 

 


0 0
原创粉丝点击