android程序代码规范

发布于:2021-07-20 04:14:58

Android 代码编程规范 代码编程规范

一. 开发环境的配置
1. 使用 Eclipse 3.5 以上的版本 2. eclipse 编码格式
请将 eclipse 编码格式设为 UTF-8 格式,设置方法如下: a. window->Preferences->general->Workspace,右 侧 Text file encoding,选择 Other,改变为 UTF-8,以后新建立工程其属性对话框中的 Text file encoding 即为 UTF-8. b. window->Preferences->general->Content Types,右侧 Context Types 树,点 开 Text,选择 Java Source File,在下面的 Default encoding 输入框中输入 UTF-8, 点 Update,则设置 Java 文件编码为 UTF-8。其他 java 应用开发相关的文件如: properties、XML 等已经由 Eclipse 缺省指定,分别为 ISO8859-1,UTF-8,如开发 中确需改变编码格式则可以在此指定。

3. 模板和格式模板文件
导入方法下: a. Window->preferences->Java->Code Style->Organize Imports 导入 android.imported b. Window->preferences->Java->Code Style->Formatter 导入 android-formatting.xml

4. Tab 与空格
a. 程序中不允许出现 Tab 符号,所有的 Tab 需用 4 个空格来代替,请用如下方法配置: Window->Preferences->General->Editors->Text Editors->Insert spaces for tabs b. XML 文件的 Tab 格式也需要单独配置一下,用如下方法配置: Window->Preferences->XML->XML Files->Editor

二.程序编写规范

1. 编码
a. 除了 String.xml 文件中可以出现非英文字符外,其他所有的 Java 文件,xml 文件中 只允许出现英文字符。 b. 所有 Java 文件,UI 配置 xml 文件中不允许出现硬编码。字符串的国际化请写入 String.xml 文件,配置信息请写入 config.xml 文件,分辨率相关信息请写入 dimens.xml 文件

2. 变量:
a. 变量的命名应具有“自明性”,例如声明一个表示电话号码的局部变量,可以这么写: “String mobileNumber”。 除了 for 循环中可以使用 int i,j 这样的命名方式,其他 地方禁止使用这种没有“自明性”的命名 b. 所有静态变量都必须以 s 开头,例如:“sMobileNumber” c. 所有的非静态变量必须以 m 开头,例如:“mMobileNumber” d. 所有常量必须采用全大写方式,单词之间用下划线分割,例如:“MOBILE_NUMBER”。 此时 f.不要再加如“s”或“m”前缀 e. 局部变量的作用域一定要最小化 f. 所有成员变量必须都定义在类的开始,定义顺序如下:常量->public 变量->private 变量 g. 所有 xml 配置文件中的变量命名,采用全小写命名,单词间用下划线分割。

3. 异常处理
a. 尽量不要使用 try catch 捕获异常,而是显式的抛出一个异常。 b. 使用 try catch 一定要在 catch 语句中做好相应的处理,不能留空。在 catch 中可以 赋默认值,做错误处理或抛出一个自己封装的异常类对象(但不能抛出 RuntimeException 异常) c. 不要捕获 Exception 类型的异常 d. 使用 Finally 这个关键字时,需要注意其中的代码执行时间点是无法确定的(无法确定 是 return 之前还是之后)。

4.引入
a. 引用顺序:android,第三方包按字母表,java(x) (这是一个 graceful 的问题) b. 引用方式:一定要引全类名,不要引用整个包。 例如: imports foo.Bar; //right imports foo.* ; //wrong

4. 注释
a. 文件开头要有 CopyRight Statement,声明结束后空一行写代码(非必须) b. 每个类都要有描述注释 c. 方法一定要写注释描述功能,参数,返回值,重要的变量要有注释

5. 括号 { }
所有的复合语句必须用花括号包围,例如: if (condition) { body(); // 标准 }

6. TODO 的使用
当有需要在未来完成的工作时,加上 TODO 注释,并给出触发事件或者时间点 // TODO: Remove this code after the UrlTable2 has been checked in. // TODO: Change this to use a flag instead of a constant.

7. 提高代码质量
a. b. c. d. e. 删除无用的变量 删除无用的引入 对于可以复用的部分,一定提取成共用的方法,减少代码量 变量/方法命名一定要符合清晰易懂,不用太在乎长度 代码完成后,进行 code review,减少出错几率

8. Log 的使用
在调试中,应该使用 Log 查找问题,但在版本 release 之前,一定要将所有的 Log 关闭。 代码要使用规范的 TAG 和调试开关,方便以后查找和关闭,例如: private static final boolean DBG = true; private static final String TAG = "MediaScanner"; if(DBG) { Log.d(TAG,"debug info"); } 在调试中,应该使用 Log 查找问题,但在版本 release 之前,一定要将所有的 Log 关闭。 代码要使用规范的 TAG 和调试开关,方便以后查找和关闭。为了方便对 Log 行为做全局控 制,重新封装出 LogUtil 类。新的调用方式如下: private static final String TAG = "MediaScanner"; LogUtil.d(TAG,"debug info");

9. 测试代码
在正规开发中,一定要有测试的环节,android 有自己一套测试的工具 。具体的写法可以 参考 Android 的系统源代码。


相关推荐

最新更新

猜你喜欢