Android编码规范

本文基于谷歌官方指导及作者经验,分享了Android编码的一些关键建议,包括使用全路径导入、详细注释类和接口、避免重复代码、合理拆分方法、控制变量范围、善用TODO注释、正确处理异常、规范日志输出等方面,旨在提升代码可读性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

补充Android代码建议

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

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

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


public class Foo {
    ...
}

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的时候,已有的代码可以继续使用弃用的库或者模式,但是开发新的组件或者项目时,使用新的库或者模式。

 

 


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值