/ Votbar / android编码规范

android编码规范

2012-06-28 posted in [知识经验]

为什么需要编码规范

原则

格式布局

例如:

	private static synchronized horkingLongMethodName(int anArg, 
			Object anotherArg, String yetAnotherArg, 
			Object andStillAnother) { 
			... 
	} 

注释

例如:

	/**
	 * @author sanping.li
	 * AST节点接口
	 *
	 */
	public interface Node {
	
		/**
		 *  节点创建完成之后,准备添加子节点
		 */
		public void open();
		...
	}

命名

例如:

	package com.alipay.android.core;//包
	public class ActivityShell extends RootActivity {//类
	private int mType;//变量
	private boolean checkRequisite();//方法
	public static final int STATE_NOMARL = 0;//常量

变量

例如:

	private int 					mState;
	private String 					mName;
	private Map<String,Object> 		mCache;

语句

例如:

	if (mType == TYPE_XML){
		...
	}
	
	switch (mState) {
		case STATE_PAUSE:
			...
			break;
		case STATE_INSTALLING:
			...
			break;
		default:
			throw new Exception("error msg");
	}

方法

例如:

	public int doSomething(int arg1,int arg2){
		int retVal = 0;
		...
		return retVal;
	}

例如:

	public class Sample{
		private static final int TYPE_XML = 0;
		...
		Processor.parser(argument);//不要new Processor().parser(argument)访问静态方法和变量
		...
		if(mType == TYPE_XML){//用常量来替换“魔法数字”,而不是if(mType == 0){
	}

异常处理

例如:

	try {
		...
	} catch (FileNotFoundException fe) {
		Log.e(TAG,fe.getMessage());//组织错误信息
	} catch (IOException ie) {
		Log.e(TAG,ie.getMessage());//组织错误信息
	} catch (Exception e){
		...//不处理应该向上抛
	} finally {
		...
	}

资源

生命周期

内存管理

例如:

	public View getView(int position, View convertView, ViewGroup parent) {
		if (convertView == null) {
			...//创建视图
		}
		...//做数据处理
	}

操作习惯

-EOF-

VotbarRSS feed

关于

supern lee

码农。在移动互联网里面浪迹,爱好计算机相关的东 西......有口吃。

版权申明

知识共享许可协议

Power by

Disqus, GitHub, Google Custom Search, mytharcher, HighlightJS, jekyll