项目编码规范

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4)专用名词建议使用习惯缩写
5)与后台交互的数据集不允许使用属性
1.11
注释规范包括:类注释规范、类的属性、方法注释规范、代码间注释规范
1.11.1
类开始必须以以下形式书写类注释:
///<summary>
///类的描述:
///作者:
///创建时间:<格式:YYYY-MM-DD>
///</summary>
TextBox
Txt
MemoEdit
Memo
TreeView
Tvw
DataGrid
Grid
DataList
List
Image
Img
DropDownList
Drp
1.10
1)普通数据集命名以Ds开头
2)作为查询参数的数据集命名以DsQuery开头,表名以QUERY_为前缀
3)元素的所有字母大写,各字母以下划线“_”分割
例:
public classHello
{
private string m_strName;
public string Name
{
get
{
return m_strName;
}
}
}
3)即使对于可能仅出现在几个代码行中的生存期很短的变量,仍然使用有意义的名称。仅对于短循环索引使用单字母变量名,如i或j。
4)不要使用原义数字或原义字符串,如for(inti = 1;i <= 7;i++)。而是使用命名常数,如for(inti = 1;i <=NUM_DAYS_IN_WEEK;i++)以便于维护和理解。
项目开发规则
C#命名规范
1.1
框架中所有命名空间的起始部分COM.ACCP
业务中所有命名空间的起始部分COM.ASSEMBLY.FOLDER
实际结构和名称以业务为准
1.2
1)名字应该能够标识事物的特性。
2)名字可以有两个或三个单词组成,但通常不应多于三个。
3)采用Pascal case,所有单词第一个字母大写。
4)每一行上放置的语句避免超过一条。
5)在大多数运算符之前和之后使用空格,这样做时不会改变代码的意图却可以使代码容易阅读。
例:
int j = i + k;
而不应写为
int j=i+k;
6)将大的复杂代码节分为较小的、易于理解的模块。
7)相同功能的代码段用#region折叠起来,在阅读时比较简洁和易于理解
例:
#region 代码段说明
#endregion
3
代码维护一律使用VS.NET内嵌的集成方式,不要使用VSS客户端工具(客户端工具仅用来维护文档版本)。
注意:必须安装VS.NET2003安装程序内带的VSS版本(6.0d),才能与VS.NET环境集成。
如果已安装其它早期版本,请先卸载再安装新版本。
2)采用Pascal case,所有单词第一个字母大写
3)少用缩写
4)不要使用下划线字符( _ )
1.7
1)变量名称=变量的前缀+代表变量含意的英文单词或单词缩写。
常用变量类型的前缀命名规则,定义如下:
类型
前缀
bool
bln
byte
byt
char
char
double
dbl
float
flt
integer
其它灰色的文件都是指project之外的文件,均不应该上传至Sourcesafe。
3.2
其他开发人员需要使用项目文件时,必须在VS.NET2003环境下的菜单选择文件->源代码管理->从源代码管理打开…
3.3
1.项目文件(*.csproj)签出后应当尽早签入,以避免影响其他人使用。
2.签入前必须先编译通过,编译通过后的文件允许签入
3.检查约束:【ck_列名】,【ck_表名_列名】
4.主键约束:【pk_表名】,【pk_列名】
5.外键约束:fk_表名_REFERENCE_表名
序列
seq_
写法1:seq_User_Info(因为每个表一般只有一个序列)
写法2:seq_UI_ID(因为表名含义已经包含在字段中)
写法3:seq_User_Info_UI_ID(表名加字段名)
1.11.2
在类的属性必须以以下格式编写属性注释:
/// <summary>
/// 属性说明:
/// </summary>
1.11.3
在类的方法声明前必须以以下格式编写注释
/// <summary>
///说明:<对该方法的说明>
/// </summary>
/// <param name="<参数名称>"><参数说明></param>
1.4
和类命名规范相同,唯一区别是枚举在名字前加上“E”前缀
例:
enum ESystemType
1.5
1)使用动词或动词短语命名方法。
2)采用Pascal case,所有单词第一个字母大写。
3)方法中的参数命名采用Camel casing,所有单词第一个字母大写,除了首字母小写。
1.6
1)使用名词或名词短语命名
存储过程
sp_
up_
proc_
单个表直接用表名,并加功能,大小写均可(Add,Edit,Del,Query,Report,Validate等)
视图
vw_
vw_直接的内容,一般是用于查询Query和报表Report两种情形
触发器
trg_
方法一:trg_表名_方法名_[之前之后等]
比如:trg_User_Info_Insert
3.相关文件必须一次性签入,推荐整个项目一次性整体签入
4.每日下班前,必须签入编译通过的版本。
总则:不管你用什么命名方法,所有的命名规则一定要统一,不要一会儿中文拼音一会儿英文等等。
1、采用英文单词或英文短语(包括缩写)作为名称,不能使用无意义的字符或汉语拼音。
2、每个数据库对象表,视图,字段,存储过程,不要用任何数据库的关键词作为名称。凡是能写注释的地方,应该写上注释,以便查看。
int
long
lng
object
obj
string
str
常用对象:
类型
前缀
Collection
coll
DateTime
dt
DataSet
ds
DataReader
drd
DataRow
dr
DataColumn
dc
Hashtable
hs
XmlDom
xml
XmlReader
xr
2)类的私有变量,在遵循第一条规则后,在其前加“m_”前缀。
方法二:
触发器分为行级Row【R】和语句级Statement[【S】,
又分为after【A】,before【B】,instead of【I】,
方法又有三种Insert【I】,Update【U】,Detele【D】,
所以:如:trg_User_Info_RBI(代表语句级,之前,插入操作),有点专业,不知道命名规则的人看不明白。
3.1
第一个创建项目的人应在VS.NET2003环境下的菜单中选择“文件”—〉“源代码管理器”—〉“将选定项目添加到源代码管理器”(注意:不要选择“将解决方案添加到源代码管理器”)。
下图是一个Project的资源管理视图,其中bin、obj两个灰色的目录是VS.NET2003自动生成的临时文件夹,用来保存编译过程中的临时文件,不应上传到SourceSafe上,否则会因为指读属性影响本地编译结果。
例:
if(x==0)
{
Response.Write("用户编号必须输入!");
}
不允许以下情况:
if(x==0) {
Response.Write("用户编号必须输入!");
}
或者:
if(x==0){Response.Write("用户编号必须输入!");}
3)为了防止在阅读代码时不得不滚动源代码编辑器,每行代码或注释在1024*800的显示频率下不得超过一显示屏
1.8
1)常量的名字应该都大写,并且指出完整含义,单词之间用下划线(_)分隔。
例:
const int PAGE_COUNT = 10;
1.9
前台系统开发时,只能使用下面列出的控件,又不能满足要求请先和模块负责人联系。讨论通过后才可使用,规范修改前严禁使用未列出的控件。Framework有提供相应控件的,不得使用.Net标准控件
函数
fn_
f_
fn_功能名称。一些是具体的操作函数,比如字符串处理,fn_SplitStr(参数)处理字符串,如果与模块相关,则fn_模块名称_具体方法
主键
pk_
pk_表名[或缩写]_列名
简洁的写法:
写法一:pk_表名,
写法二:pk_列名,因为列名设计时已经包含表的含义
外键
fk_
fk_从表名字段_主表名字段。这个推荐
控件命名=Window控件缩写前缀+变量名
控件类型
命名
Button
Btn
CheckBox
Chk
ComboBox
Cmb
DateTimeBox
Dtb
GroupBox
Grb
Label
Lbl
LookupBox
Lkp
NumericBox
Num
Panel
Pnl
ProgressBar
Pgb
RadioButton
Rad
3、名称应该清晰明了,能够准确表达事物的含义,最好可读,遵循“见名知意”的原则。
4、对长度也要有限制,最好不要超过30个字符,在PD设置生成时,部分数据库对象会自动截取到30位。
5、所有名称的字符范围为:A-Z, a-z, 0-9和_(下划线)。不允许使用其他字符作为名称。
6、注释分单行和双行,在数据库对象如函数,存储过程,视图等,都需要在页头添加
索引
idx_
idx_表名_字段名(一个或多个)【可以在其后加U或者C,规则同触犯器】
推荐使用:idx_字段名
一是唯一Unique【U】与非唯一NonUnique【N】
一是聚集Cluster【C】与非聚集NonCluster【N】
约束
ck_
1.默认约束:df_表名_列名,df_列名
2.唯一约束:uni_表名_列名,uni_列名
@LOB段数据专用表空间后面再加_lobs命名
事务
trans_
trans_
游标
crs_
crs_
表空间
_data
_idx
_tmp
_rbs
@面向用户或者应用名,这个以用户名或者应用名加后缀组成
数据表空间以用户名+_+data命名
索引表空间以用户名+_+idx命名
专用临时表空间以用户名+_+tmp命名
专用回滚段表空间以用户名+_+rbs命名
特殊处理:
4)使用名词或名词短语命名类。
5)少用缩写。
6)不要使用下划线字符(_)。
例:
public class FileStream
public class Button
1.3
和类命名规范相同,唯一区别是接口在名字前加上“I”前缀
例:
interface IDBCommand
interfac源自文库 IButton
数据库对象
前缀
命名说明

写法一:模块名_具体功能实体名,如用户角色表User_Role等,
写法二:直接写成UserRole,不用"_"来区分,看习惯和所用数据库。
列名
表名缩写_
写法:表名缩写_具体内容
如用户角色表User_Role的名称:UR_Name,
如果是单个的表名,比如区域表Area,则可以写成Area_ID。
/// <returns>
///<对方法返回值的说明>
/// </returns>
1.11.4
代码间注释分为单行注释和多行注释:
单行注释:
//<单行注释>
多行注释:
/*多行注释1
多行注释2
多行注释3
*/
2
1)所有的缩进为4个空格,使用VS.NET的默认设置。
2)在代码中垂直对齐左括号和右括号。(需讨论)
相关文档
最新文档