Java&Android代码规范

项目中直接导入Square的代码风格文件。(不导入Google的缘由是Square同时提供了Java和Android两套统一风格,Google只提供了一套)html

Square Code Stylesjava

Goolge Code Styles android

 

导入后会有不少好处,如注释规范化,import规范,方法排序,统一自动断行(PC屏幕较宽,建议断行字符数设置为120[File->Setting–>Code Style,右边Right Margin Columns])等git

而在编码保存或提交时还能自动格式化代码,删除多余空行,多余缩进,无效注释等不规范的书写。github

 

建议阅读Google Java Style 中文翻译文章 :后端

 

 

Android基本规范

 

在开发中,遵循良好的编码规范,不单单能够提升代码的可读性,减少出错的可能性,同时也下降与其余开发者交流的成本,易于他人的维护与协做。 本文简单总结了 Android 开发中的一些代码规范,供开发者参考。ide

基本要求

  • 除了注释,代码中不出现中文
  • 每一个类写上必要的注释,类的说明,做者,联系方式
  • 方法加上必要的注释说明,方便之后维护

包管理

  1. base: 存放基础类的包,里面的类以 Base 为前缀,例如 BaseActivity
  2. activity: 存放 activity 的包,每一个 activity 命名以Activity结尾,例如 MainActivity;
  3. fragment: 存放 fragment的包,每一个 fragment 命名以 Fragment 结尾,例如 ChatFragment;
  4. receiver: 存放 receiver 的包;
  5. service: 存放 service 的包;
  6. adapter: 存放 adapter 的包,每一个 adapter 命名以 Adapter 结尾,例如 EventItemAdapter;
  7. common: 存放一些公共常量,例如后端接口、SharedPreferenceKeyIntentExtra 等;
  8. utils: 存放工具类的包,好比常见的工具类:LogUtilsDateUtils
  9. entity: 存放实体类的包;
  10. widget: 存放自定义View的包;

以上是一些常见的包,但不局限于此,视项目的具体状况而定。工具

命名

大驼峰命名 (UpperCamelCase) :每一个单词的第一个字母都大写。布局

小驼峰命名 (lowerCamelCase) :除第一个单词之外,每个单词的第一个字母大写。post

命名的基本原则:

  • 尽量地使用统一的命名规范;
  • 不使用汉语拼音;
  • 除了常见的英文缩写,尽可能少地使用缩写;
1. 包命名
  • 小写字母,参见上文包管理;
  • 连续的单词直接链接起来,不使用下划线;
2. Java 类命名
  • 大驼峰命名 UserListAdapter
  • 除常见的缩写单词之外,不使用缩写,缩写的单词每一个字母都大写 RequesURLList
  • 公共的工具类建议以 Utils、 Manager 为后缀,如 LogUtils
  • 接口命名遵循以上原则,以 able 或 ible 为后缀;
3. 变量命名
  • 成员变量命名
    • 小驼峰命名;
    • 不推荐使用谷歌的前面加 m 的编码风格(若是使用团队中使用 m ,则统一使用);
  • 常量命名
    • 单词每一个字母均大写;
    • 单词之间下划线链接;
  • 控件变量命名
    • 小驼峰命名;
    • 建议使用 控件缩写+逻辑名称 格式,例如 tvPostTitleetUserName
    • 对应的控件的 id 的命名控件缩写_逻辑名称,单词均小写,用下划线链接,例如:tv_post_titleet_user_name
    • 常见的控件缩写以下:
Linearlayout ll
RelativeLayout rl
TextView tv
EditText et
Button btn
ImageView iv
CheckBox chb
ListView lv
GridView gv
RadioButton rb
控件
缩写
4. 方法命名
  • 小驼峰命名;
  • Getter 和 Setter 方法,推荐使用自动生成的,写起来也很方便。注意,bool 类型的变量 Getter 方法写成 isTrue 这种;
  • 方法名应当保证见名知义的原则,尽可能不使用 or 或者 and ,遵循 “do one thing” 原则;
5. 布局文件命名
  • activity、fragment 布局文件名以对应的类别名称为前缀,逻辑名称放在其后,如下划线链接,例如 activity_homefragment_chat_list,方便查找;
  • ListView、GridView 的 item 布局文件建议以 list_itemgird_item为前缀,加上对应的逻辑名称,例如 list_item_postgrid_item_photo
  • Dialog的布局文件以 dialog 为前缀,逻辑名称放在其后,下划线链接,例如 dialog_warnning;
  • 包含项布局命名以 include 开头,在加上对应的逻辑名称,例如 include_foot
  • 控件的 id 命名参见控件变量命名;
6. 资源命名
  • 图标资源以 ic 为前缀,例如 ic_chat ,指聊天图标;
  • 背景图片以 bg 为前缀,例如 bg_login ,指的是登陆页的背景图;
  • 按钮图片以 btn 为前缀,例如 btn_login ,指的是登陆按钮的图片,不过这只有一种状态,须要加上状态的能够在后面添加,例如 btn_login_pressed ,表示登陆按钮按下的图片;
  • 当使用 shape 和 selector 文件为背景或者按钮时,命名参照以上说明;

参考资料

本文参考了:

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息