您的位置:首页 > 移动开发 > Android开发

Android:代码的规范

2016-06-18 23:18 246 查看

代码规范

1.书写规范

编码方式统一用UTF-8. Android Studio默认已经是UTF-8,只要不去改动它就可以了

一个方法最多不要超过40行代码

文字大小的单位统一用 sp,元素大小的单位统一用 dp

应用中字符串统一在 strings.xml 中定义,然后在代码和布局文件中引用

颜色值统一在 colors.xml 中定义,然后在代码和布局文件中引用。另外,不要在代码和布局文件中引用系统的颜色,除了透明

2.命名规范

1. 包命名

域名反写+项目名称+模块名称,全部单词用小写字母

如:www.shbj.com —– 写成: com.shbj.mydemo.home

2. 类和接口命名

使用大驼峰规则,用名词或名词词组命名,每个单词的首字母大写

activity类,以Activity结尾,如:MainActivity

fragment类,以Fragment结尾,如:HomeFragment 或 Home_Fragment

service类,以Service结尾,如:DownloadService

adapter类,以Adapter结尾,如:GoodsAdapter

工具类,以Util结尾,如:JsonUtil

模型类,以Entity,Bean结尾,如:GoodEntity,GoodBean

接口实现类,以 Impl 结尾或大写 I 开头,如:AppImpl或者IApp

3. 方法命名

使用小驼峰规则,用动词命名,第一个单词的首字母小写,其他单词的首字母大写

初始化方法,以init开头,例如:initView

按钮点击方法,以to开头,如:toLogin

设置方法,以set开头,如:setData

具有返回值的获取方法,以get开头,如:getData

通过异步加载数据的方法,以load开头,如:loadData

布尔型的判断方法,以is或has,或具有逻辑意义的单词如equals 开头,如:isEmpty

4. 控件缩写

控件缩写控件缩写
TextViewtxtEditTextedt
ButtonbtnImageButtonibtn
ImageViewimgListViewlist
LinearLayoutllayoutRelativeLayoutrlayout
RadioGroupgroupRadioButtonrbtn
ProgressBarprogressSeekBarseek
CheckBoxchkSpinnerspinner
TableLayouttableTableRowrow
ScrollViewscrollSearchViewsearch
TabHosthostTabWidgetwidget

5. 常量命名

单词字母全部大写,单词之间用下划线分开

public static final int PAGE_SIZE = 20;


6. 变量命名

{范围描述+}意义描述+类型描述的组合,用驼峰式命名法则,首字母小写

private TextView mTitleTxt;  //标题栏的标题
private Button loginBtn;     // 登录按钮
private GoodEntity goodEntity;


7. 控件id命名

控件缩写_{范围_}意义,范围可选,只在有明确定义的范围内才需要


<!-- 这是标题栏的TextView -->
<TextView
android:id="@+id/txt_title";
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<!-- 这是登录按钮 -->
<Button
android:id="@+id/btn_login";
android:layout_width="match_parent"
android:layout_height="wrap_content"/>


8. layout命名

字母必须全小写且中间不能有空格,否则会报错

组件类型_{范围_}功能,范围可选,只有在明确定义的范围内才需要


activity_{范围_}功能,为Activity的命名格式:LoginActivity ---> activity_login

fragment_{范围_}功能,为Fragment的命名格式:LoginFragment ---> fragment_login

dialog_{范围_}功能,为Dialog的命名格式

item_list_{范围_}功能,为ListView的item命名格式

item_grid_{范围_}功能,为GridView的item命名格式

header_list_{范围_}功能,为ListView的HeaderView命名格式

footer_list_{范围_}功能,为ListView的FooterView命名格式


9. strings的命名

类型_{范围_}功能,范围可选


页面标题,命名格式:title_页面

按钮文字,命名格式:btn_按钮事件

标签文字,命名格式:label_标签文字

选项卡文字,命名格式:tab_选项卡文字

消息框文字,命名格式:toast_消息

编辑框提示文字,命名格式:hint_提示信息

图片的描述文字,命名格式:desc_图片文字

对话框的文字,命名格式:dialog_文字

menu的item文字,命名格式:action_文字

10. colors的命名

前缀{_控件}{_范围}{_后缀},控件、范围、后缀可选,但控件和范围至少要有一个


背景颜色,添加 bg 前缀

文本颜色,添加 text 前缀

分割线颜色,添加 div 前缀

区分状态时,默认状态的颜色,添加 normal 后缀

区分状态时,按下时的颜色,添加 pressed 后缀

区分状态时,选中时的颜色,添加 selected 后缀

区分状态时,不可用时的颜色,添加 disable 后缀

11.drawable的命名

前缀{_控件}{_范围}{_后缀},控件、范围、后缀可选,但控件和范围至少要有一个


图标类,添加 ic 前缀

背景类,添加 bg 前缀

分割类,添加 div 前缀

默认类,添加 def 前缀

区分状态时,默认状态,添加 normal 后缀

区分状态时,按下时的颜色,添加 pressed 后缀

区分状态时,选中时的颜色,添加 selected 后缀

区分状态时,不可用时的颜色,添加 disable 后缀

多种状态的,添加 selector 后缀(一般为ListView的selector或按钮的selector)

12.动画文件命名

动画类型_动画方向

fade_in ,淡入

fade_out ,淡出

push_down_in,从下方推入

push_down_out,从下方推出

slide_in_from_top,从头部滑动进入

zoom_enter,变形进入

shrink_to_middle,中间缩小

其他

1.标识符命名法(熟悉)

驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写

帕斯卡(pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写

下划线命名法:单词与单词之间用下划线做间隔

2.重要几点(熟练使用)

接口类的命名:使用帕斯卡(pascal)命名法,每个单词首字母都要大写

[b]方法名
:驼峰命名法,除首单词外,其余所有单词首字母都要大写

成员变量

3.1.记得加上成员修饰符

// 修饰符的权限
private     //只能被当前类的方法访问
protected   //可以被所有子类访问,子类没有在同一个包中也可以访问
public      //可以被任何类访问
default     //不加任何修饰符就是默认。可以被同一个包下的所有类访问;如果子类没有在同一个包下,则不能访问


3.2.命名规范,一般成员变量要在变量前加上一个 m ,如:

private List<CartBean> mDatas;
private Context mContext;
boolean mEdit;
private CardDao mcartDao;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 代码的规范