现有 App 规范

1.编码格式

源文件编码格式为 UTF-8。

2.列字符个数限制

a.80个字符的列限制,除了下述例外,任何一行如果超过这个字符数限制,必须自动换行。

b.不可能满足列限制的行(例如,Javadoc中的一个长URL,或是一个长的JSNI方法参考)。

c.package和import语句

3.包名统一用小写

公司所有项目必须以(com.jumper)为包名前缀

如:com.jumper.hospitaldoctor

4.类名

类名都以UpperCamelCase风格编写。采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的,比如HTML,URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应大写


Activity 类                Activity为后缀标识

如:欢迎页面类WelcomeActivity

Adapter类                Adapter 为后缀标识

如:新闻详情适配器 NewDetailAdapter

工具方法类                Util或Manager为后缀标识

如:(与系统或第三方的Utils区分)或功能+Util线程池管理类:ThreadPoolManager

日志工具类:LogUtil(Logger也可)

打印工具类:PrinterUtil

数据库类                  DBHelper后缀标识

如:新闻数据库:NewDBHelper

Service类                Service为后缀标识

如:时间服务TimeServiceBroadcast

Receiver类              Receiver为后缀标识

如:推送接收JPushReceiver

ContentProvider    Provider为后缀标识


自定义的共享基础类        Base开头

如:BaseActivity,BaseFragment


5.常量名

全部字母大写,用下划线分隔单词。

如:public static final int DEFAULT_TIME_OUT = 1000;

6.非常量字段名

a.非公有,非静态字段命名以m开头。

如:private Context mContext;

int mClickPosition;

b.静态字段命名以s开头。

如:private static boolean sIsActivite;

c.公有静态字段(全局变量)命名以g开头

如:public static UserInfo gUserInfo;

d.其它Type 类型

字符串添加如下后缀:Str

集合添加如下后缀:List、Map、Set

数组添加如下后缀:Arr

如:

String mPhoneStr;

private List mFHRDataList;


7.方法名

方法名都以 LowerCamelCase 风格编写。

方法名通常是动词或动词短语。

initXX()                           初始化相关方法,使用init为前缀标识,如初始化布局initView()


isXX() checkXX()             方法返回值为boolean型的请使用is或check为前缀标识


getXX()                           返回某个值的方法,使用get为前缀标识


handleXX()                     对数据进行处理的方法,尽量使用handle为前缀标识


displayXX()/showXX()    弹出提示框和提示信息,使用display/show为前缀标识


saveXX()                         与保存数据相关的,使用save为前缀标识


resetXX()                        对数据重组的,使用reset前缀标识


clearXX()                        清除数据相关的


removeXXX()                  清除数据相关的


drawXXX()                      绘制数据或效果相关的,使用draw前缀标识


另:

@Override:能用则用

只要是合法的,就把@Override注解给用上。


8.资源文件命名规范

a.资源布局文件(XML文件(layout布局文件)):


全部小写,采用下划线命名法

  1) contentview 命名

      必须以全部单词小写,单词间以下划线分割,使用名词或名词词组。

      所有Activity或Fragment的contentView必须与其类名对应,对应规则为:

      将所有字母都转为小写,将类型和功能调换(也就是后缀变前缀)。

     例如:activity_main.xml

  2) Dialog命名:dialog_描述.xml

     例如:dialog_hint.xml

  3) PopupWindow命名:ppw_描述.xml

     例如:ppw_info.xml

  4) 列表项命名:item_描述.xml

     例如:item_city.xml

b.values中name命名


stringscolors 的name命名使用下划线命名法,采用以下规则: 

模块名+activity/fragment/item+逻辑名称

如:health_activity_main_title 健康主页标题 

styles的name命名使用 Camel命名法,采用以下规则:

通用的      类别.属性.属性

如:textview.size_16.color_666666

非通用的      模块名+逻辑名称

如:main_timeDialog

9.UI控件缩写表


LinearLayout                        ll         llFriend

RelativeLayout                     rl         rlMessage

FrameLayout                        fl         flCart

Button                                 btn       btnHome

ImageButton                       ibtn       btnPlay

TextView                             tv         tvName

EditText                               et        etName

ListView                               lv          lvCart

ImageView                           iv          ivHead

GridView                              gv         gvPhoto


10.常见的英文单词缩写:

名称缩写

icon                           ic (主要用在app的图标)

color                          cl(主要用于颜色值)

divider                        di(主要用于分隔线,不仅包括Listview中的divider,还包括普通布局中                                    的线)

average                     avg

background               bg(主要用于布局和子布局的背景)

buffer                        buf

control                      ctrl

delete                        del

document                  doc

error                          err

escape                       esc

increment                  inc

infomation                 info

initial                         init

image                         img

Internationalization    I18N

length                        len

library                        lib

message                    msg

password                   pwd

position                     pos

server                        srv

string                        str

temp                         tmp

window                     wnd(win)


摘自:http://www.jianshu.com/p/0a984f999592

你可能感兴趣的:(现有 App 规范)