开发规范
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了开发规范相关的知识,希望对你有一定的参考价值。
转至元数据结尾
转至元数据起始
文件规范
- 文件必须使用UTF-8编码
命名规范
- 数据库命名规范
- 数据库表命名均遵循以下规范:
- 多个单词用下划线分隔,全部小写,例如:mail_message。
- 数据库字段命名遵循以下规范:
- 表字段全部小写,多个单词用下划线分隔,例如:message_id。
- 每张表必加唯一标识;按需可补充create_time 、creator、update_time 、updater,记录创建时间、创建人、修改时间、修改人 ;
- 有逻辑删除需求的表,可选增加status_id字段(int类型),用来标识字段是否被逻辑删除;-1表示无效,0表示正常,1表示逻辑删除
- 字段类型可选范围int,varchar,timestamp,长度设定要考虑扩展性
- 多表之间不设定外键约束
- 多表之间不进行关联查询
- Java源码命名规范
- 目录 的命名
- 项目rest-example:
- src/main/java 源码目录
- src/main/resources 资源文件目录
- src/main/webapp web文件目录
- src/test/java 测试源码目录
- src/test/resources 测试资源文件目录
- Package 的命名
- Package 的名字应该都是由一个小写单词组成,包的命名一般都是按照域名+公司名+项目名+具体反映包内容的名字。例如:cn.dinfo.xf。
- Package 存在多个单词,可以使用下划线分割,例如cn.dinfo.xf.words_tag
- 此外,对于包名我们做如下约定:
- 工具类包名前缀为 .utils
- servlet类包名前缀为 .controller
- 逻辑功能类包前缀为 .service
- 具体的逻辑功能内容前缀为功能的缩写.service.order
- Class 的命名
- 类名是个名词,采用大小写混合的方式,每个单词的首字母大写。尽量使你的类名简洁而富于描述。例如:DataFile或InfoParser。
- 使用完整单词,避免缩写词(除非该缩写词被更广泛使用,像URL,html)。
- 异常类最后加上「Exception」(例:SQLException)。
- 接口的命名和类的命名大体相同,只是接口一般用形容词。例如:Runnable。
- 测试类名后缀统一为Test,例如QAControllerTest
- Class 变量的命名
- 变量的名字必须用一个小写字母开头。后面的首个单词用大写字母开头。 例如:debug 获debugService。
- 变量为数据实体,采用驼峰,例如数据实体为messageId
- Static Final 变量的命名
- Static Final 变量的名字应该都大写,并且指出完整含义,多个单词之间用下划线分隔。例如:MAX_UPLOAD_FILE_SIZE=1024。
- 数组的命名
- 数组应该总是用下面的方式来命名:byte[] buffer;而不是:byte buffer[];
- 方法的命名
- 方法名以小写字母动词开头,后续的各个单词开头字母大写,数据实体构造器除外。例如:inputFile()。
- JavaBeans的相关函数、设置成员变量的方法用“set”+成员变量名表示,读取成员变量的方法用“get”+成员变量名表示。但是,对于布尔值(boolean)读取成员变量的方法用“is”+成员变量名表示。
- 名词单数,必须使用单数英文,如Account、Customer。
- 对于数组,列表等对象集合的命名,必须使用复数,而且最好按照英文的语法基础知识使用准确的复数形式,如 List < Account > accounts、Set< Strategy > strategies。
- 方法名的命名,需要使用“动宾结构短语”或“是动词+表语结构短语”,例如createOrder(Order order),removeOrders(List<Order> orders)
-
添加:add,创建;例如addStudent
修改:update,修改;例如updateStudent
查询:get,获取单个对象;load,加载资源;list,不分条件列举;search,有条件查询;
删除:delete,删除;remove,移除;逻辑修改为无效状态属于删除
代码规范
- 代码
- 文件头声明
- /**
* Description: 问答接口
* Author: perkins
* Date: 2017/3/9
*/
- 代码块书写格式
if (true){
//body 必须包含大括号 即使只有一行代码 避免后期增加代码时出现错误
}
- 注释
- 类注释
- /**
* Description: 问答评价
* Author: perkins
* Date: 2017/3/9
*/
- /**
- SQL语句
- 代码中书写的SQL语句要求SQL关键字全部大写,表名和字段名小写。例如:SELECT user_id, name FROM account WHERE user_id > ? AND depart = ? ORDER BY name
- Java注释有三种类型,分为单行注释(//),多行注释(/* */)和文档注释(/** */)。
- 注释应放在代码的上方或右方,不能放在其下方。
- 全局变量要有较详细的注释,包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。
- 在每个源文件的头部要有必要的注释信息,包括:文件名;版本号;作者;生成日期;模块功能描述(如功能、主要算法、内部各部分之间的关系、该文件与其它文件关系等);主要函数或过程清单及本文件历史修改记录等。
- 对于代码中的逻辑分支或循环条件需要书写注释
if (some condition){
//符合某个条件,应该这样处理
}else{
//否则应该那样处理
}
- java的类和方法,都需要用文档注释。例:
- /**
* Description: 问答评价
* Author: perkins
* Date: 2017/3/9
*/
- /**
以上是关于开发规范的主要内容,如果未能解决你的问题,请参考以下文章
整理最全规范之Git仓库管理规范,Java开发规范,最全Java命名规范,数据库开发设计规范,接口设计规范