android命名规范

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

个人觉得标识符命名原则:尽可能的用最少的字符而又能完整的表达标识符的含义。


命名规范:

1  
包(packages采用反域名命名规则,全部使用小写字母。一级包名为com,二级包名为xx(可以是公司或则个人的随便),三级包名根据应用进行命名,四级包名为模块名或层级名

此包中包含

com.xx.应用名称缩写.activity 页面用到的Activity (activity包下根据功能模块再分包)

com.xx.应用名称缩写.fragment 页面用到的Fragment (fragment层级名用户界面层)

com.xx.应用名称缩写.base 页面中每个Activity类共享的可以写成一个iBaseActivity (基础共享的类)

com.xx.应用名称缩写.adapter           页面用到的Adapter类 (适配器的类)

com.xx.应用名称缩写.utils 此包中包含:公共工具方法类

com.xx.应用名称缩写.bean 此包中包含:实体类

com.xx.应用名称缩写.db 数据库操作类

com.xx.应用名称缩写.view 自定义的View类等

com.xx.应用名称缩写.service     Service服务

com.xx.应用名称缩写.broadcast   Broadcast服务


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

描述

例如

activity 

 Activity为后缀标识

 欢迎页面类WelcomeActivity

Adapter

 Adapte 为后缀标识

 新闻详情适配器 NewDetailAdapter

解析类 

 Hlr为后缀标识

 首页解析类HomePosterHlr

公共方法类

  UtilsManager为后缀标识

 线程池管理类:ThreadPoolManager
           
 日志工具类:LogUtils

数据库类

 以DBHelper后缀标识

 新闻数据库:NewDBHelper

Service

 以Service为后缀标识

 时间服务TimeService

BroadcastReceive

  以Broadcast为后缀标识

 时间通知TimeBroadcast

ContentProvider  

 Provider为后缀标识

 

直接写的共享基础类

 以Base开头

BaseActivity,BaseFragment


3   接口( interface ):命名规则与类一样采用大驼峰命名法.

4   方法( methods ):动词或动名词,采用小驼峰命名法 例如 :onCreate(),run()

方法

说明

initXX()

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

isXX()

 checkXX()方法返回值为boolean型的请使用ischeck为前缀标识

getXX()

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

processXX() 

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

displayXX()

 弹出提示框和提示信息,使用display为前缀标识

saveXX()

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

resetXX()

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

clearXX()

 清除数据相关的

removeXXX() 

 清除数据相关的

drawXXX()

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



5   变量( variables )采用小驼峰命名法。类中控件名称必须与 xml 布局 id 保持一致。

根据变量类型加相应的前缀,后接变量含义的英文单词。相关前缀如下:
控件类型    前缀与xml文件中一致
字符串   str
boolean     is或can
其他   m

此包中包含

6   常量( Constants )全部大写 , 采用下划线命名法 . 例如: MIN_WIDTH


7   资源文件(图片drawable文件夹下): 全部小写,采用下划线命名法,加前缀区分

命名模式:activity名称_逻辑名称/common_逻辑名称

如果有多种形态如按钮等除外如btn_xx.xml(selector)

名称

功能

btn_xx

 按钮图片使用btn_整体效果selector

btn_xx_nor

 按钮图片使用btn_正常情况效果

btn_xx_press

 按钮图片使用btn_点击时候效果

bg_head

 背景图片使用bg_功能_说明

def_search_cell

 默认图片使用def_功能_说明

ic_more_help

 图标图片使用ic_功能_说明

seg_list_line

 具有分隔特征的图片使用seg_功能_说明

sel_ok

 选择图标使用sel_功能_说明 


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

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

1)contentview命名, Activity默认布局,以去掉后缀的Activity类进行命名。不加后缀

       activity_功能模块.xml

        例如:activity_main.xmlactivity_more.xml

2)Dialog命名:dialog_描述.xml

       例如:  dialog__hint.xml

2)PopupWindow命名:ppw_描述.xml

       例如:ppw _info.xml

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

       例如:item_city.xml

4).包含项:include_模块.xml

       例如:include_head.xmlinclude_bottom.xml

5).  其他: layout_描述

例如:layout_line

9   动画文件(anim文件夹下):全部小写,采用下划线命名法,加前缀区分。

 

//前面为动画的类型,后面为方向

动画命名例子

规范写法

备注

fade_in

淡入

 

fade_out

淡出

 

push_down_in

从下方推入

 

push_down_out

从下方推出

 

push_left

推像左方

 

slide_in_from_top

从头部滑动进入

 

zoom_enter

变形进入

 

slide_in

滑动进入

 

shrink_to_middle

中间缩小

 


10    资源ID(resourcesid):大小写规范与方法名一致,采用小驼峰命名法。命名规范为“资源控件的缩写  名”+“变量名”


11   layout中的id命名

命名模式为:view缩写_模块名称_view的逻辑名称

view的缩写详情如下:

控件

缩写

LinearLayout

ll

RelativeLayout

rl

TextView

tv

Button

btn

ImageButton        

ib

ImageView         

 iv

CheckBox           

cb

RadioButton        

rb

RadioGroup

rg

FrameLayout

fl

DatePicker         

dp

EditText           

et

TimePicker         

tp

toggleButton       

tb

ProgressBar 

pb

SeekBar                            

sb

AutoCompleteTextView

autoTxt

RecycleView

rcv

VideoView          

v v

WdbView            

wv

RantingBar         

rtb

Tab                

tab

Spinner            

spn

Chronometer        

cmt

ScollView          

sv

TextSwitch         

ts

GridView

gv

listView           

  lv

ExpandableList     

eplv

MapView            

mv

 

 

 
































12.styles.xml:将layout中不断重现的style提炼出通用的style通用组件,放到styles.xml中;




 


此包中包含

com.xx.应用名称缩写.activities

 页面用到的Activity (activities层级名用户界面层)

 com.xx.应用名称缩写.base

 页面中每个Activity类共享的可以写成一个iBaseActivity (基础共享的类)

com.xx.应用名称缩写.adapter  

 页面用到的Adapter (配器的类)

com.xx.应用名称缩写.tools

 此包中包含:公共工具方法类tools模块名)

com.xx.应用名称缩写.bean

(或则 com.xx.应用名称缩写.unity )

 此包中包含:元素类

com.xx.应用名称缩写.db

 数据库操作类

com.xx.应用名称缩写.view

(或则 com.xx.应用名称缩写.ui )

 自定义的View类等

com.xx.应用名称缩写.service    

 Service服务

com.xx.应用名称缩写.broadcast  

 Broadcast服务


你可能感兴趣的:(android)