编程命名方式:sql
Camel:首个单词的首字母小写,其他单词的首字母大写;例如userInfo。编程
Pascal:每一个单词的首字母大写;例如UserInfo。app
类名:eclipse
规则:Pascal工具
例子:UserInfo开发工具
常量:spa
规则:所有大写debug
实例与描述:所有大写,单词间如下划线隔开日志
例子:public static final USER_NAME = “JACK”;代码规范
接口:
规则:Pascal
实例与描述:IUserService 注:以I为前缀开始,后接Pascal命名
方法:
规则:Camel
实例:updateUserPwd(长度不超过24字母,以动宾短语的形式命名)
参数:
规则:Camel
实例:userName(长度不超过18字母)
局部变量:
规则:Camel
实例与描述:字符串类型,必须以str开头,例如:strUserName = “hh”;整型类型,必须以i、j开头,例如:iUserAge = 120;
setter\getter方法:
规则:统一由eclipse开发工具进行生成。
包命名:
规则:包名小写,通常用可以描述清楚的一个单词便可。
例如:com.platform.ims.controller.worker//创业视图处理类
统一使用同一开发工具eclipse4.5版本,而且统一引入shxtCodeProfile.xml代码规范样式的xml。经过快捷键ctrl+shift+F,进行统一规范代码样式。
Java文件注释内容:
在pacakage以前进行编写以下形式的内容,每次进行Svn代码提交,将本次的内容(蓝色部分)填写到注释中。注释的形式以下:
/*
* 描述: MMSC V100R002 Relay 通用日志系统
* 建立人: 张三
* 建立时间:2001-02-16
* 修改内容:新增
* 修改人: 李四
* 修改时间:2001-02-26
* 修改内容:。。。。。。
* 修改人: 王五
* 修改时间:2001-03-25
* 修改内容:。。。。。。
*/
Java类和接口注释内容:
在package以后和class以前进行编写,类的注释主要是一句话功能简述、功能详细描述。同时须要列出:版本号、生成日期、做者、内容、功能、与其它类的关系等。 若是一个类存在Bug,请如实说明这些Bug。注释形式以下:
/**
* 〈一句话功能简述〉
* 〈功能详细描述〉
* @author [做者]
* @version [版本号, YYYY-MM-DD]
* @see [相关类/方法]
*/
说明:描述部分说明该类或者接口的功能、做用、使用方法和注意事项,每次修改后增长做者和更新版本号和日期,@deprecated 表示不建议使用该类或者接口。
示例以下:
/**
* LogManager 类集中控制对日志读写的操做。
* 所有为静态变量和静态方法,对外提供统一接口。分配对应日志类型的读写器,
* 读取或写入符合条件的日志纪录。
* @author 张三,李四,王五
* @version 1.2, 2001-03-25
* @see LogIteraotor
*/
Java成员变量注释内容:
写在成员变量之上,说明:成员变量的意义、目的、功能,可能被用到的地方。注释形式以下:
//注释内容
private String logType;
Java类和接口的方法注释内容:
列出方法的一句话功能简述、功能详细描述、输入参数、输出参数、返回值、违例等。
注释形式以下:
/**
* 〈一句话功能简述〉
* 〈功能详细描述〉
* @param [参数1] [参数1说明]
* @param [参数2] [参数2说明]
* @return [返回类型说明]
* @exception/throws [违例类型] [违例说明]
* @see [类]
* @deprecated
*/
说明:@param 说明参数类型、用途;@exception或throws 列出可能仍出的异常;@deprecated 表示不建议使用该方法。
Java方法中内部变量注释内容:
在局部变量之上,须要与变量排版同步,注释形式以下:
public void example( )
{
// 注释变量一,用于.....
CodeBlock One
}
注意:(1)注释的语言必须统一使用中文进行描述(包含中文标点),尽可能保证每隔3-4行有相关的注释说明;(2)避免在一行代码或表达式的中间插入注释;(3)经过对方法、变量、类、接口等正确的命名以及合理地组织代码的结构,使代码成为自注释的;(3)对于一些特殊的复杂的代码进行说明(例如标记位:1,提交审核;2,经过审核;3,审核打回)。
POJO实体类名:必须以VO结尾,必需重写toString类(打印出属性值的详细信息);
Mybatis接口名:必须以VOMapper结尾,同时相应的xml文件也要以XXXXVOMapper.xml形式展示;
Controller类:尽可能不容许出现异常抛出,或者try、catch 处理异常;尽可能不容许写业务逻辑处理(所有写在service层中),作到简洁明了。
DAO/Mapper 类:声明方法时,查询以query\find\get为开头,其中query、find查询结果返回为List、Array,而get返回实体类。变动以update为开头,增长以add为开头,删除以delete开头,尽可能不容许出现其余的单词,以达到实现微SQL的形式,在增删改尽可能抛出MysqlException(FSCAppException)异常。
Service类:处理Controller\Mapper来的数据进行逻辑判断,同时处理异常(try-catch方式)。
Log4j日志:要求关键的方法,必须使用log.info\debug,输出相应的变量和返回结果的信息,尽可能进入方法内容用debug进行输出,同时作到4-5行,有日志输出。
代码规模:
代码规范内容 |
最大规模 |
备注 |
|
继承层次 |
4层 |
|
|
类的行数 |
1200行 |
|
|
类的属性 |
20个 |
|
|
类的方法 |
24个 |
|
|
方法参数 |
10个 |
|
|
方法行数 |
45行 |