质量管理运作体系文件
修订控制页
章节编号章节名称修订内容简述修订日期修订前版本号批准人
1 介绍
1.1 为什么要制定编码规范
编码规范的重要性如下:
对一个软件来说,维护费用占它整个生存周期全部花费的80%。然而,几乎没有一个软件在它的整个生命周期中都是有原班人们维护的。
编码规范化提高了程序的可读性,能够让工程师更快,更透彻的理解程序代码 。
如果要将你的程序源代码作为一件产品,应该象其他产品一样经过很好的包装,清楚明晰。
1.2 感谢
这份文档反映了由Sun Microsystems, Inc 制定的JAVA语言的编码标准。主要的贡献者是:Peter King, Patrick Naughton, Mike DeMoney, Jonni Kanerva, Kathy Walrath, and Scott Hommel
2 文件命名
这一部分列出了常用文件的后缀及其命名规范。
2.1 文件后缀命名
Java程序使用一下文件后缀命名方法:
后缀源代码 .java编译后的二进制代码.class 2.2 普通文件命名
经常用的文件名包括:
文件名用途 GNUmakefileMakefiles文件的首选文件名.我们用 gnumake 来build我们的源程序. README概述某一目录的内容 3 文件组织
一个文件包含了几个由空行和注释分隔而成的代码块。
应尽量避免一份文件超过2000行代码。
规范的Java源程序,请参看附录的“Java Source File Example”
3.1 Java源文件
每个Java源文件都包含一个单一的公共类或者接口。当私有的类或接口与一个公共类有关联时,应把它们跟这个公共类放在同一个源文件中。这个公共的类或者接口应该是文件中的第一个类或接口。
Java源文件应按如下顺序组织:
文件开头的注释(参看“文件注释” 部分)
Package and Import 语句
Class and interface 声明(参看“Class and interface 声明”部分)
3.1.1 文件开头的注释
所有的源文件都应以 “C”语言风格的注释在文件的开头列出 类名,版本信息,编写日期,版权声明等信息。
/*
* Classname
*
* Version information
*
* Date
*
* Copyright notice
*/
3.1.2 Package and Import 语句
Java源文件的第一行非注释语句通常是 package 语句,接下来是 import 语句。例如:
package java.awt;
import java.awt.peer.CanvasPeer;
注意:package名的第一部分通常以ASCII小写字母来表示,且应是一级域名如:com, edu, gov, mil, net, org,或者是ISO Standard 3166, 1981规定的两个英文字母表示的国家代码。
3.1.3 Class and Interface 声明
下表按照应出现的先后顺序描述了一个类或接口的声明。参看“Java Source File Example”中关于注释的例子。
Class/Interface 声明备注1Class/interface 的文档注释 (/**...*/) 参看“5.2 文档注释” 2Class or interface 语句 3关于Class/interface 是如何实现的注释 (/*...*/),如果有必要的话。 这部分注释应包含类或接口范围内的信息,这些信息不适于写在class/interface的文档注释里。4类变量(static)首先是”public”类变量, 然后是”protect” 类变量, 然后是”package”级类变量, 最后是”private”类变量。5实例变量首先是”public”类变量, 然后是”protect” 类变量, 然后是”package”级类变量, 最后是”private”类变量。 6构建器 7方法方法应按功能而不是范围或访问能力来分组。如:一个私有方法可以介于两个公共实例方法之间。总的目标是使源码更易读,更好理解。
4 缩排及留空规定
缩排时应以4个空格为单位,留空可以用“space”键也可以用“tab”键。使用“tab”键时应设定一个“tab”为8个空格,而不是4个。
4.1 每行的长度
每行源代码的长度不应超过80个字符