- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Nutz Java 编码规范 (V10)
Nutz Java 编码规范 (V1.0)
Byzozoh ( zozohtnt@)
Top
0. 规范的规范
1. 代码格式
2. 命名
2.1 包
2.2 类和接口
2.3 成员变量
2.4 常量
2.5 局部变量
2.6 成员函数和静态函数
3. 注释
3.1 类 Java Doc
3.2 函数 Java Doc
3.3 字段 Java Doc
3.4 函数内部注释
4. 编程
5. 单元测试
#Top
0. 规范的规范?
本规范的每一条目必须无二义性,并且可执行。否则作废
本规范的条目分为两个级别:
规则 -R
建议 -S
本规范所有的“规则”条目必须被遵守
#Top
1. 代码格式?
R-使用统一的 Eclipse 的代码格式:/p/nutz/source/browse/trunk/doc/eclipse/nutz-eclipse-java-code-format-1.0.xml
请从 svn 的 trunk/doc/eclipse/nutz-eclipse-java-code-format-1.0.xml 获得此文件
S-非 Eclipse 用户请阅读上述 XML 代码自行遵守
基本上我们没有为非 Eclipse 用户指定规范,我们还没有一个好办法
#Top
2. 命名?
#Top
2.1 包?
R-包名必须全部小写,2个以内单词。
S-最好为 1 个单数名词
R-所有项目的包要以 “org.nutz” 为父 包 。
#Top
2.2 类和接口?
S-最好为名词
R-命名类和接口时,需要将所有单词的首字母大写。
R-接口的命名不采用首字母为 I 或加上 IF 后缀的命名方式 。例 如 :IBookDao 、 BookDaoIF 等 。
R-抽象类必须使用 Abstract 作为类名的前缀,而接口建议使用 Interface 作为 接口名后缀。
R-异常类应该使用 Exception 做为 名称 后缀。
R-如果是运行一次就抛弃的类,以 ing 结尾,比如Rendering
R-类名尽量短,但是最好不要缩写,如果缩写,必须为特别常用的类,比如 org.nutz.dao.Cnd
因为调用者书写你的类名太长,他(她)的IDE会自动替他(她)换行,他会觉得有点不爽
R-不要和 Java 的标准库中的类名冲突,比如 Class, Object, String 等
如果冲突,就表示你极其藐视 Java 标准库中的那个的设计
调用者需要花更多的时间和代码来明确他使用的是你的类, 而不是标准库中的那个
S-以下情况可以允许写奇怪类名 --名称简短,让人一眼不知道什么意思,用了以后一眼就能知道什么意思
类特别常用
类非常特殊,难以归类
私有类或内部类
不推荐其他人调用的 公有、保护、默认类
起个奇怪的名字,就是不想让你关心这个类的代码
R-缺省接口实现应该使用 Default 名称 前缀 。例 如 : DefaultEntityMaker。
也可以采用 Impl 作为后缀,表示这个实现为此接口的最优实现或者唯一实现
#Top
2.3 成员变量?
S-最好为单数名词
R-能 private 就不要 default,能 default 就不要 protected,最好不要 public
R-如果是集合或数组,用复数名词
Map pets, 比 Map petMap 要好
R-不要用一个字母,尤其是 i,你可以用 index 或者 cursor 来代替
#Top
2.4 常量?
R-命名常量(带有 final 修饰符的域)时需分隔。如 : public final int MAX_VALUE = 30 。
#Top
2.5 局部变量?
R-局域变量名要尽量短,推荐用缩写,比如 StringBuilder sb
R-总的来说局部变量请随意命名,越短越好
比如这个就不好
public String abc(String str){ AbcObjectSet abcObjectSet= new AbcObjectSet(); abcObjectSet.setName(str); return abcObjectSet.getBrief(); }
而这个就很容易阅读了:
public String abc(String str){ AbcObjectSet aos= new AbcObjectSet(); aos.setName(str); return aos.getBrief(); }
#Top
2.6 成员函数和静态函数?
R-除了 setter / getter,其他的函数采用动词或者动名短语
S-以下情况可
文档评论(0)