一、命名规范
1、标识符:统一、达意、简洁
统一:一个词有多种表达方式,不求最好,但求统一;例:供应商,既可以用supplier,也可以用provider,选择一种统一使用;
达意:明确表达其意义,正确而且丰富;例:newSupplier与supplier1, service2的区别;
简洁:在统一与达意的前提下,进行简洁;若不能达意,请放弃简洁;
骆驼法则:不使用特殊符号分割,而是通过首字母大写来分割;例:SupplierName, addNewContract;
英文与拼音:尽量使用简单的英文或者全部使用拼音,拒绝英文拼音混合使用;
2、包名:小写、链接
包名:全部使用小写;不使用特殊符号分割;
3、类名
类名:首字母大写,每个单词的都大写
后缀:Service、Impl、Inter、Dao、Action、listener、Event、Servlet、Factory、Job..
4、方法名
方法名:首个单词首字母小写,后续单词首字母大写
前缀:create、delete、add、remove、initialize、destroy、open、close、read、get、copy、modity、send、find..
二、空格空行
空格使用(1个紧随,2个为前后):分隔时1个;运算符2个;逗号1个;例:call(a, b, c);b - d = e;return a == b ? 1 : 0;if (a > b)
空行使用:语意操作;方法之间;超十行;
三、代码注释
代码混乱,再多的注释都不能弥补;达意+统一+简洁+结构清晰==较少的注释
注释:少而精;代码意义注释;非代码管理;svn的无用代码删除时代
单行时用 //, 多行时用 /* .. */;流程-包围;流程-大括号;
四、最佳实践
1、懒惰的程序员,每次保存提交时,都要保持最优代码;每次保存的必须为最美的代码;
2、log更多的评级使得其优于println;
3、if while for 后边加括号;
4、//TODO让大家知道,你还有什么没做;
5、用“;”或者"//nothing to do " 来说明你故意不需要做什么;
6、减少嵌套层次;减少true/false的判断;减少变量的作用域;减少使用返回结果的方法;变量声明、初始化、使用尽量放在一起;