赞
踩
标识符只能使用ASCII字母和数字
类 | 描述 |
---|---|
Activity类 | Activity为后缀标识 |
Adapter类 | Adapter 为后缀标识 |
解析类 | Parser为后缀标识 |
工具方法类 | Util或Manager为后缀标识 |
自定义的共享基础类 | 以Base开头 |
ContentProvider | 以Provider为后缀标识 |
Receiver类 | 以Receiver为后缀标识 |
Service类 | 以Service为后缀标识 |
数据库类 | 以DBHelper后缀标识 |
方法 | 说明 |
---|---|
initXX() | 初始化相关方法,使用init为前缀标识,如初始化布局initView() |
isXX() checkXX() | 方法返回值为boolean型的请使用is或check为前缀标识 |
getXX() | 返回某个值的方法,使用get为前缀标识 |
handleXX() | 对数据进行处理的方法,尽量使用handle为前缀标识 |
displayXX()/showXX() | 弹出提示框和提示信息,使用display/show为前缀标识 |
saveXX() | 与保存数据相关的,使用save为前缀标识 |
resetXX() | 对数据重组的,使用reset前缀标识 |
clearXX() | 清除数据相关的 |
removeXXX() | 清除数据相关的 |
drawXXX() | 绘制数据或效果相关的,使用draw前缀标识 |
非常量字段名以LowerCamelCase风格编写;
scope | 规则 |
---|---|
非公有,非静态字段 | m+变量的含义 |
静态字段 | s+变量的含义 |
公有非静态字段 | p+变量的含义 |
公有静态字段 | g+变量的含义 |
public static final 字段(常量) 全部大写,并用下划线连起来。
public class MyClass {
public static final int SOME_CONSTANT = 42;
public int pField;
private static MyClass sSingleton;
int mPackagePrivate;
private int mPrivate;
protected int mProtected;
public static int gField;
}
考虑到Android中使用很多UI控件,为避免控件和普通成员变量混淆以及更好达意,所有用来表示控件的成员变量统一加上控件名称作为后缀,如标题的TextView,mTitleTextView;
对于普通变量一般不添加类型后缀,标题如mTitle;
临时变量通常被取名为i,j,k,m和n,它们一般用于整型;如:for (int i = 0; i < len ; i++),并且它和第一个单词间没有空格。
全部小写,采用下划线命名法
* contentview命名
必须以全部单词小写,单词间以下划线分割,使用名词或名词词组。
所有Activity或Fragment的contentView必须与其类名对应,对应规则为:
1)将所有字母都转为小写,将类型和功能调换(也就是后缀变前缀)。
例如:activity_main.xml
2) Dialog命名:dialog_描述.xml
例如:dialog_hint.xml
3) PopupWindow命名:ppw_描述.xml
例如:ppw_info.xml
4) 列表项命名:item_描述.xml
例如:item_city.xml
5) 包含项命名:模块_(位置)描述.xml
例如:activity_main_head.xml、activity_main_bottom.xml
注意:通用的包含项命名采用:项目名称缩写_描述.xml
例如:xxxx_title.xml
全部小写,采用下划线命名法,加前缀区分
命名模式:可加后缀 _small 表示小图, _big 表示大图,逻辑名称可由多个单词加下划线组成,采用以下规则:
用途模块名逻辑名称
用途模块名颜色
用途_逻辑名称
用途_颜色
说明:用途也指控件类型(具体见UI控件缩写表)
例如:
* btn_main_home.png 按键
* divider_maket_white.png 分割线
* ic_edit.png 图标
* bg_main.png 背景
* btn_red.png 红色按键
* btn_red_big.png 红色大按键
* ic_head_small.png 小头像
* bg_input.png 输入框背景
* divider_white.png 白色分割线
如果有多种形态如按钮等除外如 btn_xx.xml(selector)
名称 | 功能 |
---|---|
btn_xx | 按钮图片使用btn_整体效果(selector) |
btn_xx_normal | 按钮图片使用btn_正常情况效果 |
btn_xx_pressed | 按钮图片使用btn_点击时候效果 |
btn_xx_focused | state_focused聚焦效果 |
btn_xx_disabled | state_enabled (false)不可用效果 |
btn_xx_checked | state_checked选中效果 |
btn_xx_selected | state_selected选中效果 |
btn_xx_hovered | state_hovered悬停效果 |
btn_xx_checkable | state_checkable可选效果 |
btn_xx_activated | state_activated激活的 |
btn_xx_windowfocused | state_window_focused |
bg_head | 背景图片使用bg_功能_说明 |
def_search_cell | 默认图片使用def_功能_说明 |
ic_more_help | 图标图片使用ic_功能_说明 |
seg_list_line | 具有分隔特征的图片使用seg_功能_说明 |
sel_ok | 选择图标使用sel_功能_说明 |
values中name命名
类别 | 命名 | 示例 |
---|---|---|
类别 | 命名 | 示例 |
strings | strings的name命名使用下划线命名法,采用以下规则:模块名+逻辑名称 | main_menu_about 主菜单按键文字 |
colors | colors的name命名使用下划线命名法,采用以下规则:模块名+逻辑名称 | friend_info_bg |
styles | styles的name命名使用 Camel命名法,采用以下规则:模块名+逻辑名称 | main_tabBottom |
建立标准的缩进大小(如四个空格),并一致地使用此标准对代码进行格式化;
不要使用组合声明,比如int a, b;。
需要时才声明,并尽快进行初始化
不要在一个代码块的开头把局部变量一次性都声明了(这是c语言的做法),而是在第一次需要使用它时才声明。 局部变量在声明时最好就进行初始化,或者声明后尽快进行初始化。
private:仅类的内部可获取;
protected:类及其子类可获取;
public:整个包名范围内可获取;
避免多余的代码,注释掉的代码和没有实际使用代码都要删掉,不要保留;
主要作用是便于其他人阅读和理解代码;
在每个程序的最开始部分,一般都用Javadoc注释对程序的总体描述以及版权信息,之后在主程序中可以为每个类、接口、方法、字段添加Javadoc注释,每个注释的开头部分先用一句话概括该类、接口、方法、字段所完成的功能,这句话应单独占据一行以突出其概括作用,在这句话后面可以跟随更加详细的描述段落;
虽然为一个设计低劣的程序添加注释不会使其变成好的程序,但是如果按照编程规范编写程序并且为程序添加良好的注释却可以帮助你编写出设计完美,运行效率高且易于理解的程序,尤其是在多人合作完成同一项目时编程规范就变得更加重要。
/**
* <p>启动会话界面。</p>
* <p>使用时,可以传入多种会话类型 {@link io.rong.imlib.model.Conversation.ConversationType} 对应不同的会话类型,开启不同的会话界面。
* 如果传入的是 {@link io.rong.imlib.model.Conversation.ConversationType#CHATROOM},sdk 会默认调用
* {@link RongIMClient#joinChatRoom(String, int, RongIMClient.OperationCallback)} 加入聊天室。
* 如果你的逻辑是,只允许加入已存在的聊天室,请使用接口 {@link #startChatRoomChat(Context, String, boolean)} 并且第三个参数为 true</p>
*
* @param context 应用上下文。
* @param conversationType 会话类型。
* @param targetId 根据不同的 conversationType,可能是用户 Id、讨论组 Id、群组 Id 或聊天室 Id。
* @param title 聊天的标题,如果传入空值,则默认显示会话的名称。
*/
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。