电力检测中心项目和设备资源管理系统开发_第1页
电力检测中心项目和设备资源管理系统开发_第2页
电力检测中心项目和设备资源管理系统开发_第3页
电力检测中心项目和设备资源管理系统开发_第4页
电力检测中心项目和设备资源管理系统开发_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目 录1前言4编写目的4范围42数据库设计规范5Java 程序代码规范6命名规范6包名命名规范6文件名命名规范6方法名命名规范6常量名命名规范7变量名命名规范7代码规范73.2.1 类规范73.2.2 避免使用赋值语句8避免魔法数8字符串(String)的比较8嵌套的 try 层次控制8控制 return 语句的数量8规范 SQL 语句的编写84代码注释规范94.1 文件信息9类和接口的注释9方法的注释9初版代码中注释10新增代码中注释10修改代码中注释10XML 文件中注释116VSS 使用规范121前言1.1 编写目的为规范国家电力检测中心项目和设备资源管理系统项目组的应用开发、解决开发中

2、的代码规范问题和命名规范问题、促进开发工作顺利有序地进行,特制定本开发规范手册。1.2 范围适用于项目组所有。2数据库设计规范数据库设计在满足用户业务模型的前提下遵循减少冗余,线索清晰。并尽量满足数据库设计第三范式。数据库设计必须考虑数据业务量、数据库业务关系、数据冗余。对大业务量的数据库表采用按时间分表设计。对过多字段的数据表采用一对一主子表设计,将不常使用的字段保存与子表。对业务类型等类型数据表采用一对多主子表设计。对多对多关系数据表采用中间关系表设计。数据库命名规范:1、表命名:用一个或三个以下英文单词及下划线组成,单词字母全部大写,如:ELEC_USERS;2、表主键名称为:小写的英文

3、字段名+ID,如 ELEC_USERS 表的主键名为:userID,英文字段名要能够明确表达出该字段对应的中文含义,避免使用缩写和汉语拼音;3、其它主键名称为:小写的英文字段名,字段名要能够明确表达出该字段对应的中文含义,避免使用缩写和汉语拼音;4、过程命名:p_表名+方法,如:p_my_NewsAdd,如果涉及多表的情况,则用要该过程来实现功能名称,即 p_功能名+方法(方法可以忽略);5、视图命名:View_表名,如:ViewNews;如果涉及多表的情况,则用要该视图来实现功能名称,即View_+功能名;6、Sus(此处为例子,实际情况可以不同名称)为表中状态的列名,默认值为 0,在表中删

4、除操作将会改变 Sus 的值而不真实删除该;7、表、过程、视图等对象的所有都为 dbo,不要使用数据库用户名,这样会影响数据库用户的更改3Java 程序代码规范3.1 命名规范3.1.1 包名命名规范包名必须均为小写。包名需要使用英文说明包内代码功能,不能采用拼音。具体示例如下:以 cn.elec.web 为例:第一段 cn 代表公司,代表组织。第二段为公司名称播客。第三段elec 为项目名称。第四段web 为模块名称(分层)。对于与各项目之间的通用util 包、 db 包直接隶属于.elec 包下。通用包的内的代码必须不依赖于任何项目,可独立编译。3.1.2 文件名命名规范Java 文件名称

5、必须以大写字母开头,可以使用 2-4 个英文单词(尽量不要用缩写)组成每个单词的首字母大写。文件名称必须能说明文件内代码功能。对 java 文件大致分为接口,实现类,模型,静态类型,逻辑类,工具类。接口类命名:IxerFace。a)b)实现类命名:xxImpl。 实现类的名称前段必须与接口一致说明是哪个接口的实现。模型类命名:xxM或xxManager。模型类的名称必须与数据库表对应。c)d)静态类型:xxType。e)逻辑类:xx逻辑类为执行 sql 并返回结果的 M加工工厂。逻辑类返回xxM或由xxM组成的 ArrayList,List。等对象。f) 工具类:如 StringUtil,Da

6、teUtil 等。3.1.3 方法名命名规范基如下:a) 方法名应该能够简单描述出该方法实现的功能,如 deleteUsers;方法名尽量不使用缩写,除非它是众所周知的,如可以使用 db 表示 database;b)c)方法名可以有两个或三个单词组成,但尽量不要多于三个以上;d)方法名中由多个单词,第一个单词通常为动词,首字母小写,中间的每个单词的首字母都要大写,如删除用户:deleteUsers;e)方法名中不要使用下划线字符。3.1.4 常量名命名规范常量名也应当有一定的意义,常量名均为大写。如果是由多个单词,可以用下划线隔开,如果是对象类型的常量,则是大小写混合,由大写字母把单词隔开。如

7、: private final constPI=3.1415926;YEAR,String TITLE = “X”;K_OF_MONTH;3.1.5 变量名命名规范在程序中变量的名称要求能够体现出就是的功能,如果是单个单词那么变量名用小写,例如:。如果变量名是多个单词组成那么首字母小写,中间的每个单词的首字母都要大写。例如:iperUser;userLogin。为了和普通变量区别,如果变量是参数,那么应在变量前加 P_。例如:P_Usassword。如果是循环变量,那么变量名必须是一个小写字母,如:i,j,k。变量名也尽量不使用缩写,且一定要有含义,不能使用没有表达意义的变量名,如:a1;a2

8、;mmm。3.2 代码规范3.2.1 类规范import 时使用星号“*”会消耗的应用资源,因此要避免使用,在当前类如果其它类的方法,那么就明确的 import 该方法所属的类文件。此外要避免 import 的类没有被使用或者重复。3.2.2 避免使用赋值语句不允许这种书写方式:String s =eger.toString(i = 2);3.2.3 避免魔法数umber,会让程序不可读。比如:也叫表示的什么意思?所以,这里的0 就是一个魔法数。建议改用下面的书写方式:就知道,原来是把 sex 变量的值初始化为 “”。这样3.2.4 字符串(String)的比较检查字符串的比较时没有使用 =

9、或!=。正确的写法应该是:3.2.5 嵌套的 try 层次控制避免 try-catch 的嵌套的层次过多而降低代码可读性。建议最大的嵌套深度不超过 3 层。3.2.6 控制 return 语句的数量如果 return 语句太多,说明某个方法需要实现的功能太多,而且很难阅读,这个时候就需要重构。建议每个方法最多有 5 个 return 语句。3.2.7 规范 SQL 语句的编写如果需要编写 SQL 语句,则当编写的 SQL 语句过长时,需要对 SQL 语句字符串进行拆分,并且每行字符串前端需要有一空格。普通代码也要相似处理,尽量不需要拖动滚动条而显示完整代码,例子如下:/实现功能的SQL语句St

10、ring loanTypeSql = select count(lpj.ID) from LY_DAIKUANG_PJ lpj+ left join LY_DAIKUANG_TOUPIAO ltp+ on lt= lpj.FLD_TOUPIAO_ID+ where (lpj.PLD_TW_OBJ is null or trim(lpj.PLD_TW_OBJ) = )+ and (lpj.PLD_QK is null or trim(lpj.PLD_QK) = )+ and ltp.FLD_SHENYIDAN_ID = 0;if (something.equals(x)public sic fi

11、nalMALE= 0; sex = MALE;sex = 04代码注释规范以下注释是以 java 程序为例,C+的代码注释符号和 java 略有不同,但需要表达的内容完全一样4.1 文件信息信息必须在 java 文件的开头,示例如下:4.2 类和接口的注释4.3 方法的注释这里描述一下版本号的规则:/*Name:X(方法的名称)Description:X(方法的描述)Author:(作者)* Ver: V1.00 (版本号)Create Date: 2011-06-25 (创建日期)Parameters: StringpanyName(方法的入参,如果没有,填写为“无”)Return: Arr

12、ayList UsersList(返回值,如果没有,填写为“无”)*/*Name:XDescription:XAuthor:* Create Date: 2011-06-25*/*Copyright 2011XX公司XX部国家电力检测中心项目和设备资源管理系统项目组*.*/a) 当代码为初版时,版本号为 V1.00;b) 当代码被局部修改或 bug 修正时,号不变,修第二个数字增 1。例如,对初版代码包作了第一次修订,则版本号为 V1.01;c) 当代码在原有的基础上增加部分功能,号不变,修第一个数字增 1,例如,对 V1.12 版的基础上增加部分功能,则新版本号为 V1.20;d) 当代码有

13、重要修改或局部修订累积较多导致代码发生全局变化时,号增 1。例如,在V1.15版的基础上作了一次全面修改,则新版本号为 V2.00。5.4 初版代码中注释初版代码中使用的注释方法如下:添加注释时要有几点注意:a) 确保所有的代码注释都是单独的一行,而不是与代码;b) 注释全部采用中文,要能明确表达出被注释的代码所实现的功能;c) 注释不宜过长和换行,通俗易懂的代码无需注释,在变量、条件处理(ifelse)、循环语句、标识位使用(如整型变量 flag,0、1、2 等分别表示什么)的时候必须添加注释。5.5 新增代码中注释当在已经发布版本的代码中增加新的代码,则以如下方式添加注释:5.6 修改代码

14、中注释当在已经发布版本的代码中修改代码,需要把原代码注释掉之后,再添加说明,如下:/20110625新增 功能:数据库驱动 BEGINString CLASSFORNAME=oracle.jdbc.driver.OracleDriver;/20110625新增 END/数据库驱动String CLASSFORNAME=oracle.jdbc.driver.OracleDriver;/数据库服务器及数据库名称String SERVANDDB=jdbc:sqlserver:/:1433;DatabaseName=Book;5.7 XML 文件中注释/20110625修改 修改原因:重新数据库驱动 BEGIN/String CLASSFORNAME=com.jdbc.sqlserver.SQLServerDriver;String CLASSFORNAME=oracle.jdbc.driver.OracleDriver;/20110625修改 ENDD:操作手册.doc6VSS 使用规范本项目使用 Visual Studio 中的配置管理工具 VSS(Visual Sourafe)使用遵守以下的原则a)开发每天签到后必须从 VSS 服务器上获得当前版本。b)结束工作后必须将代码提交至 VSS 服务器代码可编译。c)开发对代码进行修改时必须将被修改文件 checkout

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论