Android 开发规范

来源:互联网 发布:禅道linux安装教程 编辑:程序博客网 时间:2024/06/11 04:07

对于android的命名规范,需要遵循好的开发习惯,不仅方便团队开发,而且对于自己的编程也会慢慢养成一个良好的习惯。

制定开发规范的目的:
1. 减少维护
2. 提高可读性
3. 加快工作交接

**在开发过程勿使用拼音,全程都需要使用英文
**对于命名,需要尽可能的表达出用处,让团队的成员,能够更容易的看出此命名的用意和目的。
**程序中使用单词缩写原则:不要用缩写,除非该缩写是约定俗成的。

命名规范

(一) 图片资源命名规范
对于图片资源的命名方式是小写,两个单词间用下划线分开。
a) 对于Icon图片,命名格式为:ic+功能 或者ic+模块+功能,两者之间用下划线分开 例如:ic_tab_message.png ,代表Tab选项卡其中一个按钮的icon,如果icon在多个界面使用,则一般使用ic+功能,例如返回键按钮的Icon,则使用ic_back.png。

b) 对于背景图片,命名格式为:bg+功能 或者bg+模块+功能,之间用下划线分开,例如bg_massage_tab,代表massage界面的tab的背景图,如果背景图在多个界面使用,则一般使用ic+功能,例如apk的每个界面的背景图,基本上都是相同的,则命名为bg_activity.png。

c) 对于Logo 就是使用logo.png。

d) 对于页面上需要一些图片 命名格式:img+功能 或者 img+模块+功能。如:img_elcome.png 如img_guide01.png 。
e) 当一个控件会有不同的状态图片显示时,这个时候需要添加一些后缀名来加以区分
normal 图片状态,代表正常显示的图片
selected 图片状态,代表被选择时的图片
press 图片状态,代表被按下时的图片
check 图片状态,代表在核对时的图片

(二) xml命名规范
对于xml文件名的命名方式是小写,两个单词间用下划线分开。
a) 对于activity的布局,命名格式为:activity+模块,两者之前用下划线隔开。
如acticity_home.xml 代表home这个界面的布局文件。
b) 对于view布局,命名格式为:view+功能(描述),两者之前用下划线隔开。
如view_tab.xml,代表tab的一个view布局文件
c) 对于作为ListView、GridView等控件中的Item的视图,命名方式为item+功能 或者item+模块+功能 之间用下划线隔开,例如:item_list_product.xml 代表产品列表的每一项的视图。
d) 对于dialog布局。命名格式为:dialog+功能(描述),之间用下划线隔开。例如:dialog_update.xml
e) 对于include布局,则命名为 include+功能(描述),之间用下划线隔开。 例如 include_top.xml
f) 对于anim文件,则命名为: 动画功能(描述),之间用下划线隔开,例如:
fade_in.xml
(三) xml中的控件命名规范
对于xml控件命名方式是小写,两个单词间用下划线分开。
对于xml布局中的控件的id的命名方式,需要指名控件的归属,指名控件的作用。
a) Button控件:命名格式为:bt+功能 或者 bt+模块+功能。两者之间用下划线分开,例如:android:id=“@+id/bt_back“ 代表这个是button 用于返回按钮的。
………………
其他的控件依葫芦画瓢,就是做好控件的缩写。
(四) string资源的命名规范
对于string资源,命名方式都是小写,两个单词间用下划线分开。
a) string资源的命名方式基本上就是把对应的文字翻译成英文,对于多个英文单词存在,则用下划线分开。

b) 对于String arry数组,命名方式为: 属性 或者 功能加列表属性 。例如citys 或者tab_names

(五) 类名的命名规范
关于类的命名,采用首字母大写的驼峰命名法。
a) 对于继承类,名方式为:功能(用处)+继承的类的名称,例如写一个类,继承Activiy,用来使用登录的过程,则类命名为: LoginActicity。
b) 对于一些自定义的类,类名应阐述清楚功能(用处),例如:DeviceInfo.class 说明这是一个用户设备信息的类
c) 一些共享的基础类,命名方式如下:Base+父类的类名,如:BaseActivity
(六) 方法命名规范
关于方法的命名,采用首字母小写的驼峰命名法。
方法的名称应阐述方法的作用(用处)。例如:switchTab(); 用来切换选项卡。
(七) 其它Resource资源规范
a) Color资源命名方式: color+模块(视图),中间用下划线分开。例如:color_top_title
b) Dimen资源命名方式:对于距离的大小,则用采用 distance+距离大小命名,两者之间用下划线隔开,例如:distance_20;对于文字的大小,则采用 size+大小的数字 中间用下划线隔开,例如:size_20。

框架规范

在开发过程中,需要做好良好的框架基础,每一个框架包的功能做到职责分明,遵循MVC或者MVP的软件开发模式去构建

包(packages): 采用反域名命名规则,全部使用小写字母。一级包名为com,二级包名为xx(可以是公司或则个人的随便),三级包名根据应用进行命名,四级包名为模块名或层级名
包名 此包中包含
com.xx.应用名称缩写.activities 页面用到的Activity类 (activities层级名用户界面层)
com.xx.应用名称缩写.fragments 页面构建 的一些Fragment类
com.xx.应用名称缩写.base 页面中每个Activity类共享的可以写成一个BaseActivity类 (基础共享的类)
com.xx.应用名称缩写.adapter 页面用到的Adapter类 (适配器的类)
com.xx.应用名称缩写.utils 此包中包含:一些公共的工具方法类
com.xx.应用名称缩写.model 此包中包含:实体类
com.xx.应用名称缩写.db 数据库操作类
com.xx.应用名称缩写.view 自定义的View类等
com.xx.应用名称缩写.service Service服务
com.xx.应用名称缩写.broadcast Broadcast服务
com.xx.应用名称缩写.http 网络处理、下载,上传等

编写规范

在实际的代码编写过程中,应当有以下一些意识:

  1. 控件类的成员声明时最好和xml的命名的id相对应,例如xml中一个button的id是bt_back,在使用这个Buttton类中声明一个button变量 命名为btBack, 这样一一对应,增加可读性。
  2. 若xml中没有相对应的布局 ,类中依然要使用各种控件,可以命名为 控件的缩写+描述(功能) 例如:btBack
  3. 类中如果需要用到常量,那么最好声明静态常量,常量名为大写,并对其赋值,不要在代码中直接使用常量,免得代码看上去,不知所云。
    例如: private static final int RESULT_CODE=1001;
  4. 类中需要用到字符串的常量,不要在代码中直接书写字符串,而应该将字符串在string.xml文件中,创建好,在需要的地方调用,这样的好处:(1)、方便修改。(2)可以重用 (3)、做多语言切换时,非常方便。
  5. 声明变量的时候,推荐一行一个声明,这样以利于写注释。
  6. 在实际的xml布局界面过程中,如果一些属性在很多控件中一样,可以在style中直接定义样式,可以复用样式,而来后期修改也更容易
  7. 在xml布局中,尽可能的使用include 复用相同的布局,使用merge标签 尽可能的减少嵌套
  8. 在xml布局中,关于Color、dimen、string数据,不要在xml中直接布局,而是在color.xml、dimen.xml、string.xml中定义这些数据,然后在xml中调用这些文件中,相对应的值
  9. 距离使用dp单位。字体大小是用sp为单位

注释

  1. 类的注释:应该有日期、作者、类的作用的描述
  2. 方法的注释: 对一些难以理解的方法应该加以方法的注释,包括方法名 参数的解释、 方法的作用,返回值的描述
  3. 类中一些声明的变量如果觉得难以理解的 ,应该加以注释一下,方便团队其他人理解
0 0
原创粉丝点击