规范编码习惯

android命名规范和编码规范

2016-11-07  本文已影响61人  dean550

前言

大家或许都有接手过别人的代码,最大的共同感悟就是:这代码写得真烂!!命令混乱、文件随意存放,xml文件中夹带着中文,class中有class,activity中带adapter等等。单理清这个项目脉络就要花上个一个星期。但反思自己,是不是也曾是(甚至现在还是)自己心里痛骂过千遍的那个人,自己是不是也在犯着同样的错误?最近在阅读包老师的《APP启示录》里面第4章有提及命令规范和编码规范,就抄录到这里,方便自己查阅,也期望能给大家提供些许帮助。

命名规范

1.Java类命名规范

     a.Activity命名规范:以Activity作为后缀,如:HomeActivity;

     b.Adapter命名规范:以Adapter作为后缀,如:PersonAdapter;

     c.Entity命名规范:以Entity作为后缀,如:CustomerEntity;

2.资源文件命名规范

   layout目录下的资源文件命名规范:

      a.页面布局文件:以act_为前缀,以activity所在的package作为中缀,以activity名称作为后缀(切除activity)。注意:全部都用小写。如:act_activity_addcustomer.xml

      b.listView中的item布局文件:以item作为固定前缀,列表项的名称作为后缀。注意:都是小写。如:item_lv_userlist.xml

      c.dialog布局文件:以dig_作为前缀,Dialog的功能名称作为后缀,注意:都是小写。如:dig_err_message.xml

    drawable目录下的文件命名规范:

       a.对于只有一个页面使用的资源:以该页面的名称作为前缀。

       b.对于在一个模块下多个页面使用的资源:以该模块的名称作为前缀。

       c.对于在各个模块、各个页面都有可能用到的资源,以common作为前缀。

  3.Java类中控件对象的命名规范&Layout中控件对象的ID命名规范

     控件类型+控件的逻辑名称(首字母大写),如登录按钮:btnLogin.

   4.strings.xml中常量的命名规范

    这里面的值大多数是在layout的控件上使用,所以以该常量所在的activity名称作为前缀,后面接空间名称,再后面就自由发挥了,如:loginActivity_btnLogin_text

    5.常量命名

    只能包含字母和下划线,字母全部大写。

编码规范

    1.分门别类存放各种类:

分门别类存放各种类

    2.layout中用到的常量,都要在strings.xml中定义。

    3.layout中所有控件的字体大小,都定义在dimens.xml中。这样做的好处是,只要稍微改变一下dimens.xml中的定义,就可以批量修改页面的样式。

    4.activity的onCreate拆分为以下三部分(遵循单一职责原则):

          a. initVariables:初始化变量(包括Intent上的数据和activity内部使用的变量)

          b.  initViews:加载layout布局文件,初始化控件。

          c.loadData:调用MobileAPI

   5.使用fastJSON自定义实体作为MobileAPI的数据载体

   6.页面之间传值,使用Intent携带序列化实体数据的方式。

   7.为控件添加事件,统一使用如下形式:

控件事件

   8.activity中不要嵌套内部类

   9.Adapter绑定的数据,统一采用ArrayList<自定义可序列化实体>

  10为节省内存,请使用ArrayList<自定义实体>,而不是HashMap.

  11.图片的处理,统一采用第三方组件ImageLoader或Fresco.

  12.简单的配置信息、设置页面的各种开关使用SharePreferences存储。

  13.尽量使用ApplicationContext代替Context,避免内存泄露。

目的

做这些规范,根本目的就是要统一一个团队的编码习惯,使一个项目中的代码,看上去都像是一个人写的。

上一篇下一篇

猜你喜欢

热点阅读