Android-个人命名规范

规范的原则:尽可能的用最少的字符而又能完整的表达标识符的含义。

目的:简洁,易懂。换句话说,一眼看上去不讨厌。

常用的命名方法,有三种:

1,驼峰命名法(小驼峰命名法):字符除首字母单词小写外,其余单词均大写。如sumApples

2,帕斯卡命名法(大驼峰命名法);字符中每个单词的首字母均大写的。如OrangleFactory

3,下划线命名法:字符中所有字母小写,每个单词使用下划线分开。如banana_tree

在Android开发中,常用命名的有:包,类,方法,变量,资源文件。

:采用反域名规则,建议采用如下规则:

【com】.【公司名/组织名】.【项目名称】.【模块名】如:com.hansuo.fruit.module

而创建模块包时,则根据公司要求来分,模块是按照类别分,还是功能分,还是先结构后模块分,都可以。模块包名小写简洁即可。如:(Clean结构)

Android-个人命名规范_第1张图片
项目包结构

:使用大驼峰命名法,如:

PearInteractor,PearBean,PearParam,PearRepository

PearContract,PearPersenterImpl

PearRepositoryImpl,PearActivity,PearFragment,PearDialog,PearService,PearPresenter,PearUtil

PineAppleReceiver(广播接收者),PineAppleDBHelper(数据库)

定义控件多以继承的控件为后缀,如SuperTextView,ScaleListView

方法:使用驼峰命名法,如:

Cantaloupe getCantaloupe()

void setCantaloupe(Cantaloupe cantaloupt)

boolean isCantaloupe()

void eatCantaloupe()

变量:可分为静态(statics),常量(constants),成员变量(member variables),普通变量(variables)

一般静态、常量、成员变量的命名以他们各自的英文首字母为首个字符的方式命名,如

static int sWatermelon,    final int cWatermelon,    int mWatermelon

最常用的就是普通变量,所以不做固定的样式,但还是以简洁易懂为原则命名,如

int watermelon表示数量,而List watermelons表示西瓜的集合。

如果是视图的控件,则添加后缀View或者Layout,这是一种方式;第二种方式使用控件的简写作为后缀,一般是字母的简写,如

TextView  grapeTv或grapeView

Button    grapeBtn或grapeView

SwiperRefreshLayout  swiperRefreshLayout或grapeLayout

RecyclerView recyclerView或grapeLayout

FrameLayout  grapeFl或grapeLayout

LinearLayout  grapeLl或grapeLayout

除此之外,还有一些结合体,静态+常量,一般是字符全部大写,只用下划线分开每个单词,有时常量也会这样使用,如:

static final String LIKE_WATERMELON = "watermelon"

final String FLAG_WATERMELON = "watermelon"

资源文件:图片,布局,strings.xml,color.xml,dimens.xml采用下划线命名方式,style.xml采用大驼峰命名法

图片:包含美工直接做成的图片(.png,.jpg),点9图片,shape,selector,layer-list,svg

对png,jpg,点9图片,使用ic_XX_XX的命名规则,如:

ic_durian.png,  ic_durian.jpg,  ic_durian.9.X

对selector,shape,,layer-list,svg使用它们的类型作为前缀,如:

selector_durian.xml,shape_durian.xml,layer_durian.xml,svg_durian.xml

布局:包含布局中控件id的命名,布局的命名主要是根据使用的场景来明确样式,如:

activity_strawberry,fragment_strawberry,dialog_strawberry

item_strawberry(ListView,RecyclerView),

view_strawberry(自定义控件),layout_strawberry(局部的布局,包含include,meger,ViewStub)

    布局中id命名,控件的简写_功能的描述,如:

TextView tv_grape

Button btn_grape

ImageView iv_grape

Spinner spinner

FrameLayout fl_grape或frame_layout

LinearLayout ll_grape或linear_layout

ListView lv_grape或list_view

RecyclerView rv_grape或recycler_view

string.xml,color.xml,dimens.xml,是最常用的属性值的集合,没有固定的样式,而且需要有灵活性,可随主题设置的设置而变化。目前分为两部分:共同的部分和界面特有的部分。

    共同的部分

    string.xml直接使用中文的英文翻译做标识

确定  confirm(yes表示交流中的确定,submit表示提交,agree表示同意)

取消  cancel(no表示交流中的否定,quit表示放弃,disagree表示不同意)

用户名 username

密码 password

    color.xml建议参考Android色板来取色,每一个颜色数量等级对应着一种颜色

所有背景颜色 backgound_grey_400(grey400对应的颜色);

所有标题栏背景颜色  toolbar_bg_blue_300

大文字标题颜色:title_large_yellow_600

中文字标题颜色:title_middle_yellow_500

文本颜色:content_yellow_400(content_text_yellow_400)

    dimen.xml文字大小使用单位sp,除文字外大小使用单位dp,取值时最好去2的倍数

条目的高度:item_height_46或item_heigh(46dp)

长按钮的宽度:btn_long_width_48或btn_long_width(48dp)

短按钮的宽度:btn_short_width_24或btn_short_width(24dp)

大文字标题: title_large_20或title_large(20sp)

中问题标题:title_middle_16或title_middle(16sp)

普通文本:text_content_14或text_content(14sp)

    不同的部分,尽量遵守原则:where_what_how_X(哪里_什么_怎样_属性),如:

    string.xml

LemonActivity的标题为:柠檬的果园    lemon_title

LemonActivity中获取柠檬的数量:暂时没有一个柠檬了  lemon_error_nothing

LemonActivity中文本:欢天喜地吃柠檬  lemon_happ_with_lemon

    color.xml

柠檬树叶子的颜色  lemon_tree_leaf_green_100

    dimen.xml

每颗树之间的高度  lemon_tree_height(18dp)

界面标题的大小      lemon_text_title_size(18sp)

style.xml,主题可以命名为XXTheme,控件的风格可以命名为XXStyle,如

FruitTheme,FruitStyle

我的Github项目,欢迎watch。 

你可能感兴趣的:(Android-个人命名规范)