您好,欢迎来到微智科技网。
搜索
您的当前位置:首页项目编码规范

项目编码规范

来源:微智科技网
 项目编码规范 文件状态: [ ] 草稿 [ ] 正式发布 [√] 正在修改 文件标识: 项目编码规范 当前版本: 1.0 作 者: 张波 完成日期: 2010-8-20 参考文件: NoticeDAL.cs 文件及文档注释,类,方法,变量命名 NoticeModel.cs 属性定义,私有变量 MainPage.xaml xaml中相关注释,控件命名 MainPage.xaml.cs 其他规范 编码规范目的

当团队的所有开发人员都在同一个代码上工作时,也就是代码集体拥有的情况,大家都不希望别人改变代码的外观以适应他们自己的风格。因此,通过在项目之初达成一个编码标准,就可以增加团队的生产率和沟通效果。

1. 基本规则

1. .NET有两种主要类型的字母大小写形式:Pascal和camel。

对于Pascal字母大小写形式来说,所创建名称的第一个单词的第一个字母是大写的,该名称中的后续单词也是如此,例如ThisIsPascalCase。

对于camel字母大小写形式来说,所创建名称的第一个单词的第一个字母是小写的,而该名称中的后续单词使用大写的字母,例如thisIsCamelCase。

2. 如果可以更清楚地描述事物的含义, 大家应该尽量使用完整的单词,而不是缩略语。让其他人在看到我们的变量方法名时,大概能猜出它是做什么的。

2. 命名规范

Pascal命名规则 文件 类

Pascal Pascal

DatabaseConnector

Public class DatabaseConnector{}

使用名词来描述 类的名称应该与定义它们的文件的名称匹配

接口 方法

单元测试方法

Pascal Pascal Pascal

interface IdatabaseConnector{} CalculateBalance() TestFindAllCustomers()

接口名称以字母I开头 使用动词来描述方法 单元测试名称以单词Test开头。

属性

Pascal

public string AccountNumber {get {return accountNumber;}}

大小写形式 相关例子 注释

公共实体字段 公共类字段 命名空间 解决方案 项目 委托

Pascal Pascal Pascal Pascal Pascal Pascal

CustomerName

public static bool HasGoodCredit = true namespace DataLayer NorthWindTrader DataLayer

public delegate void MouseEventHandler (object sender, MouseEventArgs e);

在命名的后面加EventHandler

Camel命名规则 私有的实例字段 私有和受保护的类字段 局部变量

camel camel camel

private float _accountBalance

protected static int numberOfAccounts string accountNumber =

FindAccountByCustomerName(customerName)

过程的参数变量

camel

public class hello {

void say(string p_sayWord) {

} }

参数

camel

public void

GetCurrentBalance(string accountNumber)

常量

全部大写

Decimal MINNUM_BALANCE = 100

全部大写,单词之间以 “_” 分隔

以_开头,第一个字母小写

过程的参数使用“p_”作为前缀.

控件对象命名规则

TextBox控件: TextBlock控件:

Label控件: Button控件: ComboBox控件: CheckBox控件: RadioButton控件:

Panel控件: DataGrid控件:

前缀为txt

前缀为lbl 前缀为btn 前缀为cmb 前缀为chk 前缀为rad 前缀为pnl 前缀为grd

Border控件: TreeView控件: ContextMenu控件: 数据库命名规则

视图: 存储过程: 触发器: 函数过程: 列名表名:

前缀为brd 前缀为tre 前缀为cmu

v_ 首字母大写 sp_ 首字母大写 t _ 首字母大写 fn_ 首字母大写

一般第一列名为ID、主键、标识递增,其他列名表名推荐采用Pascal命名方式,尽可能用英文单词或英文缩写,如英文过长(超过6位)或过于生僻可用汉语拼音的首字母。

3. 缩进

1. 按.NET推荐的编码风格编写,使用缩进与空行。使用制表符来进行缩进, 而不要用空格.

2. 代码的行长对于可读性也非常重要。试着将每一行的代码控制在80个字符之内。当每行的字符不超过80个,

而又需要换行时,请遵循下述规则:

1) 在操作符前断开 2) 在逗号后断开 3) 对齐括号

4. 声明

1. 局部变量的名称要有意义.不要用x,y,z等等(循环变量除外)。

2. 所有的成员变量声明在类或者方法的顶部,用一个换行把它和方法分开(例外:for循环内局部变量的声明和初

始化)。

3. 在声明类字段、实例字段或者局部变量时,每行只声明一个。而当在一起进行几个声明时,需对准字段或者变

量的名称。 4. 对于局部变量来说,应该在声明变量时就进行初始化。

5. 注释

C#中可以使用的注释类型有以下几种。 类型

文档注释

行末注释

单行注释

多行注释

文件头注释

#region #endregion

相关例子

///

/// This class represents a bank account ///

int myCount = 0; // Keep track of how many times ...

// Here is where we gather account data

/* Here is where we gather account data */

/*************************************************************** * 模块名称:XXXX * 功能简述:

* 创建者:新建者 创建时间:2010-6-9 * 修改人:修改人 最新修改时间:2010-7-18

***************************************************************/

#region 和 #endregion 表示将某一模块的代码折叠起来,便于查看。#region 后面可以跟任意文字以对该区域进行说明(region 和说明的文字要空格隔开)。 例: #region 删除公告 #endregion

应用时机

用于文档类和方法

用于描述某些含义不太清晰的事物的目的

用于描述后续事物或者代码块的目的

用于在代码块处进行注释,或者用于描述后续多行代码的目的 用于说明本文档的相

关信息

6. 空行与空格

尽管编译器可以忽略空行与空格,但是空行与空格可以将不同逻辑的代码单元分离,从而提高代码的可读性。 1. 在下述几种情况下应该使用一个空行:

1) 2) 3) 4)

方法之间 声明和语句之间 代码的逻辑段之间 单行或者多行注释之前

2. 在下述几种情况下应该使用一个空格:

1) 2) 3) 4)

带圆括号的关键字之后 参数列表的逗号之后 数据操作符的前后

在for语句中,用于将语句的3个逻辑段分开

7. 解决方案和项目组织

每个解决方案都应该拥有下述项目:

1. 业务项目(business project)仅存放业务项目。

2. 数据项目(data project)处理数据库和其他用于检索或者更新数据目的的遗留系统的访问。 3. 表示项目(presentiation project)处理使用系统的终端用户所需的所有视图。 4. 测试项目(test project)存放应用程序所有的单元测试。

8. 其他编码规则

1. C#中有多种类型的语句。每一行代码包含的内容不应该超过一个语句。 2. 大括号两部分都应该独占一行。

3. 在return语句中,一般不要使用括号,除非为了使返回值更加明显。

例: List Notice = new List();

return Notice;

4. 文件名要能反应类的内容,最好是和类同名,一个文件中一个类.

例: 在文件 NoticeDAL.cs中, 只有以下一个与文件名相同的类:

public class NoticeDAL

{

public bool NoticeDel(int ID)

public void AddNotice(NoticeModel notice) „ }

5. 大括号\"{\"要新起一行.

6. switch语句一定要有default来处理意外情况.

7. 同程序外部连接(数据库、接口、文件、类型转换等)一定要捕获任何类型的异常,并进行异常处理. 8. 给出友好的消息给用户,必要时用日志记录错误的细节,包括发生的时间,和相关方法,类名等。不要“捕捉

了异常却什么也不做”.

9. 始终使用\"{ }\"包含if/else下的语句,即使只有一条语句 10. 把引用的系统的namespace和自定义或第三方的分开 11. 自定义的属性以Attribute结尾,

例:public int AuthorAttribute { }

12. 自定义异常类以Exception结尾,并且在类名中能清楚的描述出该异常的原因。

例:public class NotFoundFileException:Exception { }

13. 注释需和代码对齐

14. 对代码段、方法的参数和各变量的用途进行注释

例:

///

/// 删除公告方法,成功返回true; ///

/// 要删除的公告ID /// 返回bool public bool NoticeDel(int ID) { }

15. 用一个空行来分开代码的逻辑分组 16. 花括弧 {}需和括号外的代码对齐

17. 不在代码中使用具体的路径和驱动器名,使用相对路径,并使路径可编程.

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 7swz.com 版权所有 赣ICP备2024042798号-8

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务