andriodstudio命名规范
andriodstudio命名规范
标识符命名法
标识符命名法最要有四种:
1 驼峰(Camel)命名法:⼜称⼩驼峰命名法,除⾸单词外,其余所有单词的第⼀个字母⼤写。
2 帕斯卡(pascal)命名法:⼜称⼤驼峰命名法,所有单词的第⼀个字母⼤写
3 下划线命名法:单词与单词间⽤下划线做间隔。
4 匈⽛利命名法:⼴泛应⽤于微软编程环境中,在以Pascal命名法的变量前附加⼩写序列说明该变量的类型。量的取名⽅式为:
<scope_> + <prefix_> + <qualifier>范围前缀,类型前缀,限定词。
个⼈觉得标识符命名原则:尽可能的⽤最少的字符⽽⼜能完整的表达标识符的含义。
英⽂缩写原则:
1 较短的单词可通过去掉“元⾳”形成缩写
2 较长的单词可取单词的头⼏个字母形成缩写
3 此外还有⼀些约定成俗的英⽂单词缩写.
下⾯为常见的英⽂单词缩写:
名称缩写
icon  ic (主要⽤在app的图标)
color  cl(主要⽤于颜⾊值)
divider di(主要⽤于分隔线,不仅包括Listview中的divider,还包括普通布局中的线)
selector sl(主要⽤于某⼀view多种状态,不仅包括Listview中的selector,还包括按钮的selector)
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)
程序中使⽤单词缩写原则:不要⽤缩写,除⾮该缩写是约定俗成的。
命名规范:
1  包(packages): 采⽤反域名命名规则,全部使⽤⼩写字母。⼀级包名为com,⼆级包名为xx(可以是公司或则个⼈的随便),三级包名根据应⽤进⾏命名,四级包名为模块名或层级名
包名此包中包含
<应⽤名称缩写.activities页⾯⽤到的Activity类 (activities层级名⽤户界⾯层)
<应⽤名称缩写.base页⾯中每个Activity类共享的可以写成⼀个i额BaseActivity类 (基础共享的类)
<应⽤名称缩写.adapter  页⾯⽤到的Adapter类 (适配器的类)
<应⽤名称缩写.tools此包中包含:公共⼯具⽅法类(tools模块名)
<应⽤名称缩写.bean
(或则 应⽤名称缩写.unity )
此包中包含:元素类
<应⽤名称缩写.db数据库操作类
<应⽤名称缩写.view
(或则 应⽤名称缩写.ui )
星座 性格⾃定义的View类等
<应⽤名称缩写.service    Service服务
2  类(classes):名词,采⽤⼤驼峰命名法,尽量避免缩写,除⾮该缩写是众所周知的,⽐如HTML,URL,如果类名称中包含单词缩写,则单词缩写的每个字母均应⼤写。
类描述例如
activity 类 Aty或者Activity为后缀标识欢迎页⾯类WelcomeAty.或者WelcomeActivity
Adapter类  Adp或者Adapte 为后缀标识新闻详情适配器NewtDetailAdp或则直接  NewDetailAdapter
解析类 Hlr为后缀标识⾸页解析类HomePosterHlr
公共⽅法类  Tools或Manager为后缀标识线程池管理类:ThreadPoolManager ⽇志⼯具类:LogTools
数据库类以DBHelper后缀标识新闻数据库:NewDBHelper
Service类以Service为后缀标识时间服务TimeService
BroadcastReceive类以Broadcast为后缀标识时间通知TimeBroadcast
ContentProvider  以Provider为后缀标识
直接写的共享基础类以Base开头BaseActivity,BaseFragment在一起在一起在一起在一起是什么歌
3  接⼝(interface):命名规则与类⼀样采⽤⼤驼峰命名法,多以able或ible结尾,如interface Runna ble ;
interface Accessible 。
4  ⽅法(methods):动词或动名词,采⽤⼩驼峰命名法例如:onCreate(),run()
⽅法说明
initXX()初始化相关⽅法,使⽤init为前缀标识,如初始化布局initView()
isXX() checkXX()⽅法返回值为boolean型的请使⽤is或check为前缀标识
getXX()返回某个值的⽅法,使⽤get为前缀标识
processXX() 对数据进⾏处理的⽅法,尽量使⽤process为前缀标识
如何做阳春面displayXX()弹出提⽰框和提⽰信息,使⽤display为前缀标识
saveXX()与保存数据相关的,使⽤sav为e前缀标识
resetXX()对数据重组的,使⽤reset前缀标识
clearXX()清除数据相关的
removeXXX()  清除数据相关的
drawXXX()绘制数据或效果相关的,使⽤draw前缀标识
5  变量(variables)采⽤⼩驼峰命名法。类中控件名称必须与xml布局id保持⼀致。
⽤统⼀的量词通过在结尾处放置⼀个量词,就可创建更加统⼀的变量,它们更容易理解,也更容易搜索。例如,请使⽤strCustomerFirst和strCustomerLast,⽽不要使⽤strFirstCustomer和strLastCustomer。
量词列表:量词后缀说明
First  ⼀组变量中的第⼀个
Last  ⼀组变量中的最后⼀个
Next  ⼀组变量中的下⼀个变量
Prev  ⼀组变量中的上⼀个
Cur    ⼀组变量中的当前变量
6  常量(Constants)全部⼤写,采⽤下划线命名法.例如:MIN_WIDTH
7  资源⽂件(图⽚drawable⽂件夹下):全部⼩写,采⽤下划线命名法,加前缀区分
命名模式:activity名称_逻辑名称/common_逻辑名称
如果有多种形态如按钮等除外如l(selector)
名称功能
btn_xx按钮图⽚使⽤btn_整体效果(selector)
btn_xx_normal按钮图⽚使⽤btn_正常情况效果
btn_xx_press按钮图⽚使⽤btn_点击时候效果
bg_head背景图⽚使⽤bg_功能_说明
def_search_cell默认图⽚使⽤def_功能_说明
icon_more_help图标图⽚使⽤icon_功能_说明
seg_list_line具有分隔特征的图⽚使⽤seg_功能_说明
sel_ok选择图标使⽤sel_功能_说明
命名后缀:
后缀说明
unit在使⽤xml的tilemode来配图⽚时,element图⽚使⽤此后缀
nor图⽚的状态,代表普通状态
hl图⽚的状态,代表⾼亮状态
press图⽚的状态,代表按下状态
select图⽚的状态,代表其所占的view被选中
unselect 图⽚的状态,代表其所占的view没有被选中
8    资源布局⽂件(XML⽂件(layout布局⽂件)):
全部⼩写,采⽤下划线命名法
1).contentview命名, Activity默认布局,以去掉后缀的Activity类进⾏命名。不加后缀:
功能模块.xml
例如:l、l、l
或则:activity_功能模块.xml
例如:l、l
2).Dialog命名:dialog_描述.xml
例如:l
闯红灯扣几分罚多少钱2).PopupWindow命名:ppw_描述.xml
例如:ppw _l
控件
缩写LayoutView
lv RelativeView
rv TextView
tv Button
btn ImageButton
imgBtn ImageView
mgView 或则 iv CheckBox
chk RadioButton
rdoBtn analogClock        anaClk DigtalClock        dgtClk
3). 列表项命名listitem_描述.xml
例如:l
4).包含项:include_模块.xml
例如:l 、l
5).adapter 的⼦布局:功能模块_l
例如:l 、
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 ):⼤⼩写规范与⽅法名⼀致,采⽤⼩驼峰命名法。命名规范为“资源控件的缩写  名”+“变量名”。注意:页⾯控件名称应该和控件id 名保持⼀致
命名模式:activity 名称_功能模块名称_逻辑名称/activity 名称_逻辑名称/common_逻辑名称
11  layout 中的id 命名
命名模式为:view 缩写_模块名称_view 的逻辑名称
view 的缩写详情如下:
DigtalClock        dgtClk
DatePicker        dtPk
EditText          edtTxt
TimePicker        tmPk
toggleButton      tglBtn
ProgressBar proBar
SeekBar                            skBar
AutoCompleteTextView autoTxt
ZoomControls      zmCtl
VideoView          vdoVi
WdbView            webVi
RantingBar        ratBar
Tab                tab
Spinner            spn
Chronometer        cmt
ScollView          sclVi
硬卧上中下TextSwitch        txtSwt
ImageSwitch        imgSwt
listView          lVi 或则lv
ExpandableList    epdLt
MapView            mapVi
12.activity中的view变量命名
命名模式为:逻辑名称+view缩写
建议:如果layout⽂件很复杂,建议将layout分成多个模块,每个模块定义⼀个moduleViewHolder,其成员变量包含所属view
l:将layout中不断重现的style提炼出通⽤的style通⽤组件,放到l中;
14.使⽤layer-list和selector

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。