命名规范的重要意义:
1.一个软件的生命周期中,80%的花费在于维护
2.几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护
3.编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码
4.如果你将源码作为产品发布,就需要确任它是否被很好的打包并且清晰无误,一如你已构建的其它任何产品
5.为来自不同的项目组或个人提供标准的代码格式。
例如:com.sun.eng
com.apple.quicktime.v2
edu.cmu.cs.bovik.cheese
一般公司命名为:
com.公司名.项目名.模块名...
一般个人命名为:
indi :个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者
包名为:indi.发起者名.项目名.模块名...
pers :个人项目,指个人发起,独自完成,可分享的项目,copyright主要属于个人
包名为:pers.个人名.项目名.模块名...
priv :私有项目,指个人发起,独自完成,非公开的私人使用的项目,copyright属于个人
包名为:priv.个人名.项目名.模块名...
team:团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队所有
包名为:team.团队名.项目名.模块名...
类名由名词或名词性词组(尽量使用名词),采用大小写混合方式,每个单词的首字母大写。尽量使你的类名简洁而富于描述。
方法的命名
构造方法应该用递增的方式写(比如:参数多的写在后面)
例如: public CounterSet(){}
public CounterSet(int size){ this.size = size;}
常量的命名 (全部大写 ,常加下划线)
例如:MAX_VALUE
参数的命名(首字母小写,字母开头大写)
普通变量 普通变量名的首字母小写,其它每个单词的首字母大写。命名时应该使其简短而又有特定含义,简洁明了的向使用者展示其使用意图。
主要的的命名规范有以下三种:
Camel 标记法:首字母是小写的,接下来的单词都以大写字母开头
Pascal 标记法:首字母是大写的,接下来的单词都以大写字母开头
匈牙利标记法:在以Pascal标记法的变量前附加小写序列说明该变量的类型
在Java我们一般使用匈牙利标记法,基本结构为scope_typeVariableName,它 使用1-3字符前缀来表示数据类型,3个字符的前缀必须小写,前缀后面是由表意性 强的一个单词或多个单词组成的名字,而且每个单词 的首写字母大写,其它字 母小写,这样保证了对变量名能够进行正确的断句。例如,定义一个整形变量,用来 记录文档数量:intDocCount,其中int表明数据类型,后面为表 意的英文名,每个单词首字母大写。这样,在一个变量名就可以反映出变量类型和变量所存储的值的意义 两方面内容,这使得代码语句可读性强、更加容易理解。 byte、int、char、long、float、 double、boolean和short。
数据类型/前缀(附)
byte b
char c
short sh
int i
long l
char c
string s
float f
double d
hashtable h
[] arr
List lst
Vector v
StringBuffer sb
Boolean b
Byte bt
Map map
Object ob
对于在多个函数内都要使用的全局变量,在前面再增加“g_”。例如一个全局的字符串变量:g_strUserInfo。
/* ...... */ 注释若干行
Java除了可以采用我们常见的注释方式之外,Java语言规范还定义了一种特殊的注释,也就是我们 所说的Javadoc注释,它是用来记录我们代码中的API的。Javadoc注释是一种多行注释,以/**开头,而以*/结束,注释可以包含一些 HTML标记符和专门的关键词。使用Javadoc 注释的好处是编写的注释可以被自动转为在线文档,省去了单独编写程序文档的麻烦。
例如:
/**
* This is an example of
* Javadoc
* @author darchon
* @version 0.1, 10/11/2002
*/
@version 标明该类模块的版本
@see 参考转向,也就是相关主题
@param 对方法中某参数的说明
@return 对方法返回值的说明
@exception 对方法可能抛出的异常进行说明