《Java编码规范》是一本针对Java编码风格的小册子,取材自Scott Ambler制定的Java编码标准和Rogue Wave公司的编码风格文档。Scott Ambler是知名的对象技术专家,也是The Object Primer,Process Patterns,More Process Patterns等(Process Patterns和More Process Patterns中文版也将由人民邮电出版社出版)很有影响力的技术图书的作者。Rogue Wave是第一个可视化Java开发工具JFactory的开发商,它们还开发出了JWidgets,Chart.J和StudioJ等基于Java语言的程序库和组件,还曾获得包括Software Development杂志效率大奖在内的众多奖项。
这本书的诞生过程很有趣。在Rogue Wave公司发展壮大的过程中,公司的创建者Tom Keffer深深体会到很难让所有的程序员都遵从一致的工作规范。于是,Tom编写了35页的C++编码工作规范,并将它发到每个新雇员的手上。这个规范的效果很好。当客户要了解Rogue Wave公司如何保证代码的一致性的时候,他们告知客户有这样一份规范,并且也送给客户一份。消息传开了,Tom的规范还被写进公司的技术报告。Rogue Wave公司送出了上千份规范,并且得到了非常积极的反馈。好的习惯和方法在Java项目的开发中得到了保持和延续。当Scott Ambler看到“Java编码工作规范”最初的草稿时,他建议和他自己在网上发布的Java编码标准进行整合——于是,这本薄薄的《Java编码规范》诞生了。
《Java编码规范》共总结了108条Java编码原则,分为一般原则、格式、命名、文档、编程、包6大类。这些原则或具有一般的指导性(例如第1条“遵从原始代码的风格”),或具有较强的约定性(例如第5条“缩进嵌套代码”),或具有明确的启发性(例如第89条“根据契约编程”),或具有很强的可操作性(例如第98条“考虑用notify()取代notifyAll()”),养成良好的工作习惯对迅速提高专业素质有很大的帮助。不管是原则本身的表述还是具体含义的阐释,语言都简洁明了、易于理解。值得一提的是,本书用了1章(34条)的篇幅,对Java程序的文档和注释作了非常详尽的规定,尤其是在编写文档注释方面,更是巨细不遗。程序注释的高度规范有助于Javadoc工具提取高质量的程序文档。规范注释的重要性在《Java编码规范》中得到了很好体现和强调。在详细阐释了这108条原则之后,本书的“Summary(总结)”部分对这些原则给出了统一整体的呈现,使读者在速查的时候可以一目了然。
《Java编码规范》的原书出版以来,得到普遍的赞誉和广泛的好评(可参见Amazon网站上的书评)。这本英文版的小册子,非常适合于专业的Java程序员和软件项目管理人员阅读;而对于那些苛求一致性的软件项目开发团队,这本小巧的“口袋书”更是方便的必备“工具”。
当前,很多有远见的软件公司非常注重内部开发语言工作规范的建立。国内也开始出版这方面的技术书籍。但是,我们几乎还看不到有关Java编码规范的图书正式出版。从这个意义上讲,这本《Java编码规范》并不是程序员和软件开发商的“紧箍咒”,而应该有更进一步的启发意义,帮助他们在科学、可行并且适合于自己的规范中提高开发效率,改善代码质量,体会编码乐趣,获取更多自由。