Android开发命名规范和编码规范

转载请注明出处:http://blog.csdn.net/crazy1235/article/details/51346027



无规矩不成方圆,是吧。。哈哈~~

很庆幸,本人刚学java编程的时候,就被老师灌输了编程规范的相关知识,并且一直在遵守。

有过团队开发经验的人都知道,如果没有一定的规范可行,那么代码看起来将是苦不堪言,甚至是乱七八糟。

下面就介绍一下,我个人编码过程中使用到的规范,供大家参考~~


命名规范

命名规范要望文知义,简单明了。
命名规范定制太多,就会让人心烦,反而没人遵守了。
                         ---《APP研发录》

先介绍两种命名规则:

  • 驼峰命名法:又称小驼峰命名法。除了首个单词首字母小写除外,其余所有单词所有首字母都要大写。
  • 帕斯卡命名法:又称大驼峰命名法。所有单词首字母大写。

包的命名规范

包名一律小写

建议采用如下规则:【com】.【公司名/组织名】.【项目名称】.【模块名】

比如:com.jacksen.mvp.demo。然后在这个目录下根据业务逻辑进行分层。

常见的包分层结构如下:

  • com.xxx.xxx.view –> 自定义view 或者是View接口
  • com.xxx.xxx.activities –> activity类
  • com.xxx.xxx.fragments –> fragment类
  • com.xxx.xxx.adapter –> 适配器相关
  • com.xxx.xxx.utils –> 公共工具类
  • com.xxx.xxx.bean –> 实体类
  • com.xxx.xxx.service –> service服务
  • com.xxx.xxx.broadcast –> 广播接收器
  • com.xxx.xxx.db –> 数据库操作类
  • com.xxx.xxx.persenter –> 中间对象
  • com.xxx.xxx.model –> 数据处理类

类的命名规范

Android中类的命名与JAVA开发采用一致的规范即可。

大驼峰命名法,即所有单词首字母大写。
  • Activity –> xxxActivity.java
  • Application –> xxxApplication.java
  • Fragment –> xxxFragment.java
  • Service –> xxxService.java
  • BroadcastReceiver –> xxxBroReceiver.java
  • ContentProvider –> xxxProvider.java
  • Adapter –> xxxAdapter.java
  • Handler –> xxxHandler.java
  • 接口 –> xxxInter.java
  • 接口实现类 –> xxxImpl.java
  • Persenter –> xxxPersenter.java
  • 公共父类 –> BaseActivity.java、BaseFragment.java、- BaseAdapter.java等
  • util类 –> LogUtil.java
  • 数据库类 –> BaseSQLiteDBHelper.java

变量的命名规范

采用驼峰命名规则。

Java普通变量:

  • resultString
  • userBean
  • loginPresenter

Android控件变量:

  • loginBtn
  • inputPwdEt
  • showNameTv

有些人建议采用【控件缩写】+【控件逻辑名称】的方式,比如btnLogin。不过我个人比较习惯反过来写,比如loginBtn。与类的命名类似,把逻辑名称写在前面。

常用控件的缩写

控件 布局文件中缩写 代码中缩写
LinearLayout xxx_layout xxxLLayout
RelativeLayout xxx_layout xxxRLayout
FrameLayout xxx_layout xxxFLayout
TextView xxx_tv xxxTv
EditText xxx_et xxxEt
Button xxx_btn xxxBtn
ImageView xxx_iv xxxIv
CheckBox xxx_chk xxxChk
RadioButton xxx_rbtn xxxRbtn
ProgressBar xxx_pbar xxxPbar
ListView xxx_lv xxxLv
WebView xxx_wv xxxWv
GridView xxx_gv xxxGv

常见单词的缩写:

单词 缩写
icon ic
background bg
foreground fg
initial init
information info
success succ
failure fail
error err
image img
library lib
message msg
password pwd
length len
buffer buf
position pos

常量命名:

全部单词采用大写,每个单词之间用“_”分割。

例如:

public static final String API_URL = "http://apis.baidu.com/heweather/weather/free";

方法的命名规范

与java开发类似,采用驼峰命名规则。首单词首字母小写,其余单词首字母大写。尽量不要使用下划线。

举例:

  • setxxx()
  • getxxx()
  • loginxxx()
  • onCreate()
  • onDestory()
  • isxxx() –> 返回值是boolean类型
  • checkxxx()

方法的命名规范

全部采用小写,单词之间使用下划线分割。

布局文件:

  • activity_login.xml
  • fragment_first_tab.xml
  • item_choose_city.xml
  • dialog_choose_city.xml
  • common_footer.xml
  • popup_xxx.xml

控件ID:

上面【常用控件的缩写】表格中基本列出了常用控件的ID写法。

  • login_btn
  • input_phone_et
  • input_pwd_et
  • login_pbar

drawable目录下的命名规范

全部单词小写,单词之间采用下划线分割。
  • 图标 – > ic_xxx.png –> ic_logo.png
  • 背景图 –> bg_xxx.jpg –> bg_splash.jpg
  • selector –> selector_login_btn.xml
  • shape –> shape_login_btn.xml
  • 图片状态 –> bg_login_btn_pressed.jpg & - bg_login_btn_unpressed.jpg

anim目录下的命名规范

单词全部小写,单词之间采用下划线分割。
  • fade_in.xml
  • fade_out.xml
  • slide_in_from_left.xml
  • slide_in_from_top.xml
  • slide_out_to_right.xml
  • slide_out_to_bottom.xml

编码规范

  • 代码中尽量不要出现中文。注释和除外。代码中通过strings.xml引用来显示中文。
  • 控件声明放在activity级别,这样在activity其他地方可以使用。
  • 在一个View.OnClickListener中处理所有的点击事件逻辑,这样看起来很集中和直观。
  • strings.xml中使用%1sd等实现字符串的通配。
  • 布局文件中的字体大小,都定义在dimens.xml中。
  • 有关margin和padding的值也都放在dimens.xml中。
  • 界面之间传值尽量使用intent方式。少用全局变量。
  • 不建议在布局文件中添加点击事件。
  • 数据类型转换一定要校验。
  • 使用常量代替枚举。
  • 实体不要在不同模块间共享,但是可以在统一模块下的不同页面共享。
  • 建议采用左括号与方法名称在同一行的代码格式来进行代码的编写和格式化。貌似左括号在下一行是C#的形式。
  • 业务稍微复杂一些,都有可能提炼一个BaseActivity或BaseFragment出来做为公共父类。
  • 类注释一定要写,管家的方法也要写方法注释。常量尽量写注释。


项目中的命名规范和编码规范,是一个项目Leader前期需要准备的,也是一项必备技能。

制定好了规范,就要遵守,有了统一的规范,项目才好维护,相互之间才好review代码,便于开发与维护。



参考

《APP研发录》



介绍完毕,欢迎指教~~

时间: 2024-10-05 08:22:40

Android开发命名规范和编码规范的相关文章

第四章 android 命名规范和编码规范

书里面讲的比较常见,单个人也是有不同的观点: 因为android绝大部分使用java开发的,因此java相关规范适用于android: Google Style: 英文地址:http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 中文翻译:http://www.blogjava.net/zh-weir/archive/2014/02/08/409608.html 然后说下我在android开发中的命名规范和编码规范: 先分

Android 开发 命名规范(基础回顾)

标识符命名法标识符命名法最要有四种: 1 驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写. 2 帕斯卡(pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写 3 下划线命名法:单词与单词间用下划线做间隔. 4 匈牙利命名法:广泛应用于微软编程环境中,在以Pascal命名法的变量前附加小写序列说明该变量的类型. 量的取名方式为:<scope_> + <prefix_> + <qualifier>范围前缀,类型前缀,限定词.

【转载】Android 开发 命名规范

原文地址:http://www.cnblogs.com/ycxyyzw/p/4103284.html 标识符命名法标识符命名法最要有四种: 1 驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写. 2 帕斯卡(pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写 3 下划线命名法:单词与单词间用下划线做间隔. 4 匈牙利命名法:广泛应用于微软编程环境中,在以Pascal命名法的变量前附加小写序列说明该变量的类型. 量的取名方式为:<scope_> 

Android开发命名规范

刚开始进行android开发时候,命名都是按照拼音来,所以有的时候想看懂命名的那个控件什么是什么用的,就要读一遍甚至好几遍才知道,这样的话,在代码的审查和修改过程中就会浪费不少不必要的时间.如果就是我一个人开发,一个人维护的话还好,可是如果一个项目是团队分工合作,这样让你的同事去看你的代码就更加吃力了,因为大家之间的编程方式不一样,所以,在开发过程中,命名规范统一尤为重要,最好是团队中统一好大家命名方法,这样对于日后的工作会轻松很多. 在面试的时候,审核一个程序员的编程水平的时候,命名规范也是一

android 开发 命名规范

转自:http://www.cnblogs.com/ycxyyzw/p/4103284.html 标识符命名法标识符命名法最要有四种: 1 驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写. 2 帕斯卡(pascal)命名法:又称大驼峰命名法,所有单词的第一个字母大写 3 下划线命名法:单词与单词间用下划线做间隔. 4 匈牙利命名法:广泛应用于微软编程环境中,在以Pascal命名法的变量前附加小写序列说明该变量的类型. 量的取名方式为:<scope_> + 

Android 命名规范和编码规范

简明概要  多写注释 一.关于命名规范 对于开发项目来说肯定是要有统一的规范,然而命名规范需要做到哪几点呢? 答: 首先,不能反人类. 再来就是,要望文而知其意. 下面就来说说具体该怎么去规范我们的代码了.How to name? 1)Java类文件 i. Activity 命名规范: 以Activity作为后缀, 例如 personActivity. ii. Adapter命名规范: 以Adapter作为后缀,  例如 personAdapter. iii. Entity 命名规范: 大多以E

web项目开发 之 前端规范 --- JavaScript编码规范

JavaScript编码规范 此文严格按照W3C规范和部分实际项目可读性,浏览器加载,性能等众多属性权衡,做出平时前端编码规范文档.供广大web工作者参考并实施,对维护和项目扩展升级都能省时省力. 场景:web前端开发中 一些Javascript的注意事项 和 规格建议: [参考百度资料 和个人一些总结] 1 前言 JavaScript 在百度一直有着广泛的应用,特别是在浏览器端的行为管理.本文档的目标是使 JavaScript 代码风格保持一致,容易被理解和被维护. 虽然本文档是针对 Java

web项目开发 之 前端规范 --- CSS编码规范

此文严格按照W3C规范和部分实际项目可读性,浏览器加载,性能等众多属性权衡,做出平时前端编码规范 文档.供广大web工作者参考并实施,对维护和项目扩展升级都能省时省力. 转载请注明出处:JS前端实用开发QQ群 :147250970  欢迎加入~! CSS编码规范 1 前言 2 代码风格 2.1 文件 2.2 缩进 2.3 空格 2.4 行长度 2.5 选择器 2.6 属性 3 通用 3.1 选择器 3.2 属性缩写 3.3 属性书写顺序 3.4 清除浮动 3.5 !important 3.6 z

web项目开发 之 前端规范 --- HTML编码规范

此文严格按照W3C规范和部分实际项目可读性,浏览器加载,性能等众多属性权衡,做出平时前端编码规范文 档.供广大web工作者参考并实施,对维护和项目扩展升级都能省时省力. 转载请注明出处,JS前端实用开发QQ群 :147250970  欢迎加入~! HTML编码规范 1 前言 2 代码风格 2.1 缩进与换行 2.2 命名 2.3 标签 2.4 属性 3 通用 3.1 DOCTYPE 3.2 编码 3.3 CSS 和 JavaScript 引入 4 head 4.1 title 4.2 favic