TTMS system office room 【TTMS16H-TTMS2A-TTMS8Q8-TTMSHHJ8】
代码编写规范精选文档
知识管理系统代码编写规范
一、介绍
本文档为《知识管理系统代码编写规范,为保证代码风格的一致性和后期的可维护性,文档讲述的内容要求所有开发人员必须遵守。
规范主要参考了Google Java Style,包括了其他一些业界约定俗成的公约和普遍采用的标准。规范并非最终标准,一些规定还需再做商讨
术语说明
本文档除非特殊说明,否则:
1.class)统指普通类、枚举类、接口注解类型
2.注释(comment)只用来指实现注释(implementation comments)。我们不使用“文档注释”这样的说法,而会直接说Javadoc。
其他“术语说明”,将在文档中需要说明的地方单独说明。
文档说明
本文档中的代码并不一定符合所有规范。即使这些代码遵循本规范,但这不是唯一的代码方式。例子中可选的格式风格也不应该作为强制执行的规范。
二、源码文件基础
文件名
源文件以其最顶层的类名来命名,大小写敏感,文件扩展名为.java
文件编码:UTF-8
源码文件使用UTF-8编码。
特殊字符
空格字符
除了换行符外,ASCII 水平空白字符(0x20是源码文件中唯一支持的空格字符。这意味着:
1.其他空白字符将被转义。
2.Tab字符不被用作缩进控制。
特殊转义字符串
任何需要转义字符串表示的字符(例如\b,\t,\n,\f,\r,\",\'\\等),采用这种转义字符串的方式表示,而不采用对应字符的八进制数(例如\012)或 Unicode 码(例如\u000a)表示。
非 ASCII 字符
对于其余非ASCII字符,直接使用Unicode字符(例如),或者对应的Unicode码(例如\u221e)转义都是允许的。唯一需要考虑的是,何种方式更能使代码容易阅读和理解
注意:在使用Unicode码转义,或者甚至是有时直接使用Unicode字符的时候,添加一点说明注释将对别人读懂代码很有帮助。
三、源码文件结构
源码文件按照先后顺序,由以下几部分组成:
1.license 或者 copyright 声明信息。(如果需要声明)
2.(package)声明语句。
3.import 语句。
4.类声明(每个源码文件只能有一个顶级)。
每个部分之间应该只有一行空行作为间隔。
license 或者 copyright 的声明信息。
如果需要声明 license 或 copyright 信息,应该在文件开始时声明。
包声明
包声明的行没有行长度的限制。单行长度限制不适用于包声明。
import语句
不使用通配符import
,不要出现类似这样的import语句:import .*;
没有行长度限制
import 语句的行没有行长度的限制。单行长度限制不适用于import 语句所在行。
顺序和空行
import语句应该被分为几个组,每个组之间由单行的空行隔开。分组的顺序如下:
1.所有的静态导入为归为一组。
2.(项目自带包)包的import归为一组。
3.第三方包。每个顶级包归为一组。第三方包之间按ASCII码排序。例如:android,com,junit,org,sun
4.java包归为一组。
字符串长度规则5.javax包归为一组。
同一组内的import语句之间不应用空行隔开。同一组中的import语句按ASCII码排序。
类声明
只声明一个顶级
每个源码文件中只能有一个顶级
例外:,该文件中可没有package-info类。
类成员顺序
类成员的顺序对代码的易读性有很大影响,但这也不存在唯一的通用法则。不同的类可能有不同的排序方式。
重要的是,每个都要按照一定的逻辑规律排序。维护者应该要能解释这种排序逻辑。比如,
新的方法不能总是习惯性地添加到类的结尾,因为这样就是按时间顺序而非某种逻辑来排序的。
重载方法:不应该分开
当一个类有多个构造函数,或者多个同名成员方法时,这些函数应该写在一起,不应该被其他成员分开。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。