1 JAVA开发规范
1.1 包名规范包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用单数形式,但是类名如果有复数含义,类名可以使用复数形式。 例:应用工具类包名为com.siqiansoft.util、类名为MessageUtils(此规则参考spring的框架 结构) 1.2 类名规范类名使用UpperCamelCase风格,但以下情形例外:DO/BO/DTO/VO/AO/PO/ UID等。 例:MarcoPolo/UserDO/XmlService/TcpUdpDeal/TaPromotion 1.3 方法名规范方法名、参数名、成员变量、局部变量都统一使用lowerCamelCase风格,必须遵从驼峰形式。 正例:localValue/getHttpMessage()/inputUserId。 1.4 参数名、属性名规范(1)代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。 (2)代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。 说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义。注意,即使纯拼音命名方式也要避免采用。 例:alibaba/taobao/youku/hangzhou等国际通用的名称,可视同英文。 1.5 各层命名规约(1)Service/DAO层方法命名规约 1)获取单个对象的方法用get做前缀。 2)获取多个对象的方法用list做前缀,复数形式结尾如:listObjects。 3)获取统计值的方法用count做前缀。 4)插入的方法用save/insert做前缀。 5)删除的方法用remove/delete做前缀。 6)修改的方法用update做前缀。 (2)领域模型命名规约 1)数据对象:xxxDO,xxx即为数据表名。 2)数据传输对象:xxxDTO,xxx为业务领域相关的名称。 3)展示对象:xxxVO,xxx一般为网页名称。 4)POJO是DO/DTO/BO/VO的统称,禁止命名成xxxPOJO。 1.6 注释(1)类、类属性、类方法的注释必须使用 Javadoc 规范,使用/**内容*/格式,不得使用// xxx 方式。 (2)所有的抽象方法(包括接口中的方法)必须要用 Javadoc 注释、除了返回值、参数、异常说明外,还必须指出该方法做什么事情,实现什么功能。 说明: 对子类的实现要求,或者调用注意事项,请一并说明。 (3)所有的类都必须添加创建者和创建日期。 (4)方法内部单行注释,在被注释语句上方另起一行,使用//注释。方法内部多行注释使用/* */注释,注意与代码对齐。 (5)所有的枚举类型字段必须要有注释,说明每个数据项的用途。 (6)所有代码修改的同时,注释也要进行相应的修改,尤其是参数、返回值、异常、核心逻辑等的修改,修改代码注释要标记修改人、修改时间、修改原因和修改内容。 (7)谨慎注释掉代码。在上方详细说明,而不是简单地注释掉。 如果无用,则删除。 说明: 代码被注释掉有两种可能性: 1) 后续会恢复此段代码逻辑。 2) 永久不用。前者如果没有备注信息,难以知晓注释动机。后者建议直接删掉(代码仓库保存了历史代码)。 1.7 其它获取当前毫秒数System.currentTimeMillis(); 而不是 new Date().getTime(); 说明: 如果想获取更加精确的纳秒级时间值, 使用System.nanoTime()的方式。在 JDK8 中,针对统计时间等场景,推荐使用 Instant 类。
|