项目开发规范,数据库设计规范

来源:互联网 发布:韩国打榜用什么软件 编辑:程序博客网 时间:2024/05/17 21:45

1.命名规范

定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性)

1.1 namespace的命名

namespace的名字应该都是由一个大写字母开头的单词组成,若由多个单词组成,每个单词的首字母大写。

1.2 Class的命名

Class 的名字必须由大写字母开头而其他字母都小写的单词组成,

 

  • 例如:  class Raster;

 

1.3局部变量的命名

变量的名字必须用一个小写字母开头。后面的单词用大写字母开头。

1.4 Static变量的命名

Static 变量的名字应该都大写,并且指出完整含义。

1.5参数的命名

参数的名字必须和变量的命名规范一致。

1.6数组的命名

数组应该总是用下面的方式来命名:

byte[] buffer;

而不是:

byte buffer[];

1.7 代码注释

  类头部注释

1.用文字说明代码的作用,并正确指出该代码的编写思路和逻辑方法;

1.  在每个类的开始赋予一个注释标头;

可参考:(至少需要这几项,Description:描述该类功能,作者,时间。)

/**

 * Description: 用户管理

 * @Author: wjl

 * @Create Date: 2015-8-17下午4:06:14

 */

在更改该类重要的内容时,可在里面添加内容。

 

 

方法头部注释

 

/**

* 跳转到添加用户页面

* @return

*/

 

接口头部注释

 

/**

* Description:

* param

* return

* @Author:wjl

* @Create Date: 2015-8-13下午5:04:34

*/

 

实体属性头部注释

/**

* 用户名字

*/

1.8 功能点方法规范定义

n  初始化

u  XX_init

n  查询

u  XX_query/XX_search

n  授权

u  XX_auth

n  拒绝

u  XX_reject

n  明细

u  XX_info

n  录入

u  XX_input

n  新增

u  XX_add

n  修改

u  XX_update

n  删除

u  XX_del

界面命名规范定义

一个业务一个文件夹 里面放所以该业务的jsp界面。

n  查询页面

u  query.jsp

n  明细页面

u  show.jsp 

n  录入页面

u  XX_input.jsp

n  新增

u  XX_add.jsp

n  修改

u  XX_update

n  删除

大部分删除基本上都要弹出提示,是否确定删除。

界面字段显示格式(非数据库中存储格式)

 

Ÿ   日期格式:2013-06-28

Ÿ   时间格式:2013-06-28 15:31:00

Ÿ   金额:999,999,999,999.00,整数时显示小数点和小数值

Ÿ   数字:XXX,XXX(显示千分位)

 


2.   数据库设计规范

2.1数据库

采用26个英文字母(区分大小写)和0-9这十个自然数,加上下划线'_'组成,共63个字符.不能出现其他字符(注 释除外).
注意事项:
1) 以上命名都不得超过30个字符的系统限制.变量名的长度限制为29(不包括标识字符@).
2) 数据 对象、变量的命名都采用英文字符,禁止使用中文命名.绝对不要在对象名的字符之间留空格.
3) 小心保留词,要保证你的字段名没有和保留词、数据 库系统或者常用访问方法冲突
5) 保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性.假如数据类型在一个表里是整 数,那在另一个表里可就别变成字符型了.

 

2.2数据库命名规范

数据库,数据表一律使用前缀

正式数 据库名使用小写英文以及下划线组成,尽量说明是那个应用或者系统在使用的.比如:

web_19floor_net
web_car

备 份数据库名使用正式库名加上备份时间组成,如:

web_19floor_net_20070403
web_car_20070403

 

2.3数据库表命名规范

遵循以上数据库实体命名规则。

典型的字段的取名:(以操作员信息Staff为例)

内码Staff_Id

名称Staff_Name

编号Staff_Code

备注字段名Remark

 

表与表之间的相关联字段要用统一名称,
如 web_user 表 里面的 userId 和 web_group 表里面的 userId 相对应。(或者可以加个表名前缀)

 

2.4字段类型规范

规则:用尽量少的存储空间来存 数一个字段的数据.
比如能用int的就不用char或者varchar
能用tinyint的就不用int
能用 varchar(20)的就不用varchar(255)

 

数字Number

对于编码字段,oracle一般用Number(5)或者Number(10),mysql 用int(11);

如果是金额,一般用Number(12,2); mysql用double(11,2)

特殊字段如:邮编Number(6)

日期时间

datetime型

 

2.5数据库文档

在服务器svn上都有数据库设计文档, 更改了数据库里面的字段后,都要更新数据库文档。方便以后管理查询维护。

 

另外,在创建表的时候,要对该表中的所有字段进行注释说明,该字段的中文意思。




相关数据库的知识:

 

VARCHAR是变长存储,字段长度是数据库一种约束,定义合理的长度也可以让人容易理解字段的用途。

 

MYSQL中定义的长度如果小于255,字段长度用1个字节表示,如果超过255,字段的长度将固定用2个字节表示。ORACLE没有这样的问题。

 

字段定义的长度对索引也有较大影响,MYSQL数据库的索引存储的长度都是定义的长度,不是实际字符的长度,这是一个非常大的问题,估计主要原因是为了实现简单,所以MYSQL在索引上会浪费大量的空间保存字符串。

 

nvarchar     varchar  的区别是存储方式不同 
varchar
是按字节存储的.而带 "n "nvarchar是按字符存储的,使用Unicode来存储数据
比如说   varchar(40),能存储40个字节长度的字符,存储中文字符的时候,因为中文字符1个字符就等于2个字节.所以varchar(40)只能存储20个中文字符
nvarchar(40),
就可以存储40个中文字符,也就是说可以存储80个字节长度的字符

 

将字段设置为not null 还出于另外一种考虑:mysql表的列中包含null的话,那么该列不会包含在所有中。也就是使用索引是无效的。所有,考虑今后会使用索引的字段,就要设置字段属性是not null。

 

考虑到这个字段今后会作为查询关键字使用like的形式进行搜索。那么要将该字段定义成索引。这样使用like查询就会更快。


 

1 0
原创粉丝点击