Android编码规范


Android开发的一些编码规范

  • 1.java代码中不出现中文,最多注释中可以出现中文,中文统一写在strings.xml中。
  • 2.常量命名只能包含字母和,字母全部大写,单词之间用隔开。
  • 3.局部变量命名、静态成员变量命名 只能包含字母,单词首字母大写,其他字母均为小写。
  • 4.图片要处理,图片尽量分拆成多个可重用的图片。
  • 5.引用第三方库要慎重,避免应用大容量的第三方库,导致客户端包非常大。
  • 6.布局文件中的id命名:
    命名模式为:view缩写_模块名称_view的逻辑名称
    常用控件的缩写如下
    LayoutView:lv
    RelativeView : rv
    TextView : tv
    ImageView : iv
    ImageButton : im
    Button : btn
  • 7.Layout中的id命名:
    命名模式为:view缩写_模块名称_view的逻辑名称
    view的缩写详情如下
    LinearLayout:ll
    RelativeLayout : rl
    TextView : tv
    ImageView : iv
    ImageButton : ib
    Button:btn
  • 8.String.xml中的id命名:
    命名模式为:activity名称功能模块名称逻辑名称/activity名称逻辑名称/common逻辑名称
    strings.xml中,使用activity名称注释,将文件内容区分开来。另外,strings.xml中使用%1$s实现字符串的通配。
  • 9.activity中的view变量命名:
    命名模式为:view缩写+逻辑名称
    如果layout文件很复杂,建议将layout分成多个模块,每个模块定义一个moduleViewHolder,其成员变量包含所属view。
    另外,activity中在一个View.OnClickListener中处理所有的逻辑
  • 10.drawable中的图片命名:
    命名模式为:activity名称逻辑名称/common逻辑名称
  • 11.styles.xml:将layout中不断重现的style提炼出通用的style通用组件,放到styles.xml中。
  • 12.不要重用父类的handler,对应一个类的handler也不应该让其子类用到,否则会导致message.what冲突。
  • 13.服务端可以实现的,就不要放在客户端。
  • 14.使用button+activitgroup实现tab效果时,使用Button.setSelected(true),确保按钮处于选择状态,并使activitygroup的当前activity与该button对应。
  • 15.如果多个Activity中包含共同的UI处理,那么可以提炼一个CommonActivity,把通用部分叫由它来处理,其他activity只要继承它即可。
  • 16.如果所开发的为通用组件,为避免冲突,将drawable/layout/menu/values目录下的文件名增加前缀。
  • 17.activity中在一个View.OnClickListener中处理所有的逻辑。