欢迎来到天天文库
浏览记录
ID:37962248
大小:27.12 KB
页数:4页
时间:2019-06-04
《Java命名规范》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、恒达时讯Java基本命名及编码规1.原则第一原则:见名知意。类名最好用名字,方法名用动词,名称与内容统一,避免歧义。第二原则:层次清晰。方法、属性归于类,类归于包,划分有依据,归类有道理。第三原则:粒度明确。多态、继承、封装的使用要因时而变,设计模式的使用也要因需而选,代码结构不可没有设计规划也不可过度设计,要做到取舍得当。总结:“见问思”,第一原则(见):看看名称是否一眼就能看出类的涵义、方法的作用第二原则(问):自问一下这个方法应该属于这个类吗,这个类是否应该属于这个包吗。第三原则(思):思考这块
2、是否应该使用某种设计模式,权衡该模式的优缺点及可能给项目带来的影响。2.命名规范命名时要切记“描述性”和“唯一性”两大标准,既做到通俗易懂又避免资源冲突。2.1.工程的命名工程名一般全用小写字母,每个单词之间用下划线或中划线隔开,名称由工程汉语拼音的首字母加版本号两部分组成。版本号我们采用微软windows格式版本号。版本格式:主版本号.子版本号[修正版本号[.编译版本号]]示例:1.21,2.0说明:1.目初版时,版本号为1.0或1.00;2.当项目在进行了局部修改或bug修正时,主版本号和子版本号
3、都不变,修正版本号加1;3.当项目在原有的基础上增加了部分功能时,主版本号不变,子版本号加1,修正版本号复位为0,因而可以被忽略掉;4.当项目在进行了重大修改或局部修正累积较多,而导致项目整体发生全局变化时,主版本号加1;5.另外,编译版本号一般是编译器在编译过程中自动生成的,我们只定义其格式,并不进行人为控制.命名示例:xjgzcx_1.0.01.1.包的命名Java包的名字都是由小写单词组成。一般采用公司域名的反写+工程名(除去版本名称)+包实体意义名称。命名示例:com.hdsx.xjgzcx.
4、dao1.2.类的命名类的命名以“见名知意”的原则进行。推荐类的名字由大写字母开头,一个单词中的其他字母均为小写。如果类名称由多个单词组成,则建议将每个单词的首字母均用大写,例如,UserService。如果类名称中包含单词缩写,则建议将这个词的每个字母均用大写,如:XMLManager。由于类是设计用来代表对象的,所以建议在命名类时应尽量选择名词。特殊情况实在不好用英文进行表达的可以使用拼音简写。命名示例:UserService1.3.方法的命名方法的名字的第一个单词应以小写字母开头,后面的单词首字
5、母要大写,建议在方法命名时尽量选择动词。命名示例:addUser();1.4.常量命名常量的名字应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则建议用下划线分割这些单词。命名示例:MAX_VALUE.1.5.参数的命名参数的命名规范和方法的命名规范相同,而且为了避免阅读程序时造成迷惑,请在尽量保证在参数名称为一个单词的情况下,参数的命名尽可能明确。命名示例:name1.6.注释public或protected成员必须使用Javadoc标注,private成员使用块注释,属
6、性使用行注释,需要特殊提示的地方使用行注释。注释的使用一定要坚持”说明问题”的原则进行,尽量意思注释清楚,做到言简意赅。规定必须将所有的public或者protected成员(get或set方法除外)进行注释,private成员选择性标注。1.使用规范1.1.Spring的使用Spring使用时采用XML配置和Annotation标注相统一的方式。在基础类(如数据库连接等)中使用XML配置,在其它功能性类或接口中使用Annotation标注。XML配置中统一规范为分块配置,块必须标明起点和止点。代码示
7、例:………数据库连接必须统一由Spring管理,以便于后期的更改和优化,在项目发布时一律使用容器数据库连接池。1.2.Struts的使用Struts使用时尽量区分清POJO类与Struts类的区别,Struts中尽量包含POJO对象而不是POJO对象的属性,当然在实在不便于满足的条件下可以使用POJO属性。1.3.DWR和jquery的使用首选DW
8、R和Struts的分工,在功能页面跳转时推荐使用Struts,在页面内进行跳转时推荐使用DWR的ajax技术,一切秉承“用户体验至上”的原则。DWR配置文件、Struts配置文件的编写不按功能划分,按使用人划分,坚持“谁编写谁负责“的原则。再则DWR和JQuery的分工,在ajax数据交换上使用DWR技术,在页面控制上使用JQuery技术。1.4.开发环境使用在开发的每个里程碑时刻都需在模拟上线环境下进行一次模拟测试。在开发中尽量使用统一的开发环境。
此文档下载收益归作者所有