C# 编写规范

 

C# 编写规范

一、两种命名风格:

1.Pascal风格 大驼峰命名法

    包含一个到多个单词,每个单词首字母大写,其余字母均小写。例如:HelloWorld、SetName等等。

2.Camel风格   小驼峰命名法

    包含一个到多个单词,第一个单词首字母小写,其余单词首字母大写。例如:name、productId等等。

二、标识符的大小写规则

1.参数和变量的命名使用Camel风格。

2.除参数和变量外,所有命名空间、类、函数、接口、属性等名称的命名,使用Pascal风格。

三、命名约定

1.使用易读的英文名称。

2.下划线。其他非字母数字字符不要用。

3.避免命名冲突,与关键字、命名空间、类、函数、接口、属性等名称的冲突。

4.不要使用缩写单词,除非它已被广泛接受、妇孺皆知。

四、命名空间命名

1.命名空间采用Pascal风格,取名一般为 人名.项目名称 ,例如:Zhangsan.ProjectName\Zhangsan.Office 。

2.需要用复数时,用复数。例如:System.Collections 。

3.需要缩写时,不需要加复数,例如:System.IO 。

五、类、结构、接口 的命名

1.类、结构、接口 使用Pascal风格,使用名词名词短语为类、接口和值类型命名。

2.接口以大写字母I为前缀,例如:Icomponent。

3.派生类的末尾带上基类的名称。

六、逻辑类命名

1.按照Pascal风格,使用名词或名词短语命名,并加上后缀Logic 。

七、文件夹命名

1.文件夹以功能模块的名称按照Pascal风格命名。比如后端管理功能及权限相关功能,全部放到System文件夹里。

八、代码编码规范

1.缩进,【Tab】键;回退缩进,【shift】+【Tab】。缩进八个置位符。

2.注释须和代码对齐。多使用#regedit 和 #endregion 代码块。

3.代码中垂直对齐左括号和右括号。

4.适当增加空行,来增加代码的可读性。

5.避免使用大文件。代码文件多大,可分多个文件写。

6.避免写冗长的方法。

7.在运算符之前和之后使用空格,增加代码的可读性。

8.出密码外,一般可供用户输入的字段值,必须忽略前后空白(不包含密码)。

9.在对字段值进行有效性验证时,对提交进数据库的内容必须进行SQL注入过滤与XSS过滤。

10.一个方法只完成一个任务。不要把多个任务组合到一个方法中,即使那些任务非常小。

11.避免使用很多成员变量,声明局部变量,并传递给方法。

12.不要在方法间共享成员变量,如果在几个方法间共享一个成员变量,那就很难知道是哪个方法在什么时候修改了它的值。

13.不在代码中使用具体路径和驱动器名,使用相对路径,并使路径可编程。永远别设想你的代码是在C:盘运行。你不会知道,一些用户在网络上或Z:盘运行程序。

14.应用程序启动时进行自检并确保所需文件和附件在指定位置。如果需要的配置文件找不到,应用程序需自己创建使用默认值的一份。如果在配置文件中发现错误值,应用程序要抛出错误,给出提示消息告诉用户正确值。

15.出现任何问题给用户一个有好的提示。错误消息能帮助用户解决问题。永远不要写一些笼统的提醒,如应用程序出错发现一个错误等,而应写具体的错误提醒,如数据库更新失败,请确保登陆ID和密码正确。显示错误消息时,除了说哪里错了,还应提示用户如何解决问题。

16.错误处理和异常事件。

    16.1.不要捕捉了异常却什么也不做。如果隐藏一个异常,你将永远不知道异常到底发生了没有。

    16.2.发生异常时,给用户提示友好的消息,但要精确记录错误的所有可能细节,包括发生的时间和相关方法、类名。

    16.3.别写太大的try-catch模块。如果需要,为每个执行的任务编写单独的try-catch模块。这将很容易找出哪一段代码产生异常,并给用户发出特定的错误消息。

    16.4.如果应用程序需要,可以编写自己的异常类。自定义异常类不应从基类SystemException派生,而要继承于IApplicationException。

C# 代码编写规范 目录 目录1目的..............................................................................................................................................2 1目的.......................................................................................................................................................4 2适应范围...............................................................................................................................................4 3术语及缩略语.......................................................................................................................................4 4规范内容...............................................................................................................................................4 4.1命名总体规则................................................................................................................................4 4.2命名规范........................................................................................................................................5 4.2.1变量命名.................................................................................................................................5 4.2.2常量命名.................................................................................................................................7 4.2.3类(Class)命名.........................................................................................................................7 4.2.4接口(Interface)命名................................................................................................................7 4.2.5方法(Method)命名..................................................................................................................8 4.2.6命名空间(NameSpace)命名...................................................................................................8 4.2.7属性(Property)命名................................................................................................................8 4.3注释规范........................................................................................................................................8 4.3.1概述.........................................................................................................................................8 4.3.2自建代码文件注释.................................................................................................................9 4.3.3模块(类)注释..........................................................................................................................9 4.3.4类属性注释...........................................................................................................................10 4.3.5方法注释...............................................................................................................................10 4.3.6代码间注释........................................................................................................................... 11 4.4编码规则...................................................................................................................................... 11 4.4.1错误检查规则....................................................................................................................... 11 4.4.2大括号规则........................................................................................................................... 11 4.4.3小括号规则........................................................................................................................... 11 4.4.4缩进规则...............................................................................................................................12 4.4.5对齐规则...............................................................................................................................12 4.4.6比较规则...............................................................................................................................12 4.4.7 Case规则..............................................................................................................................12 4.4.8 If … Else规则.......................................................................................................................12 4.4.9单语句规则...........................................................................................................................13 4.4.10单一功能准则.....................................................................................................................13 4.4.11简单功能准则.....................................................................................................................13 4.4.12明确条件规则.....................................................................................................................13 4.4.13选用False规则..................................................................................................................13 4.4.14独立赋值规则.....................................................................................................................13 4.4.15定义常量规则.....................................................................................................................14 4.4.16模块化规则.........................................................................................................................14 4.4.17交流规则.............................................................................................................................14 4.5编程准则......................................................................................................................................14 4.5.1变量使用...............................................................................................................................14 4.5.2数据库操作...........................................................................................................................14 4.5.3对象使用...............................................................................................................................15 4.5.4模块设计原则.......................................................................................................................15 4.5.5结构化要求...........................................................................................................................15 4.5.6函数返回值原则...................................................................................................................16 4.6代码包规范..................................................................................................................................16 4.6.1代码包的版本号...................................................................................................................16 4.6.2代码包的标识.......................................................................................................................16 4.7代码控制......................................................................................................................................17 4.7.1代码库/目录的建立..............................................................................................................17 4.7.2代码归档...............................................................................................................................17 附件1:数据类型缩写表.................................................................................................................17 附件2:控件名缩写表.....................................................................................................................18 a、.NET控件................................................................................................................................18 b、html控件..................................................................................................................................19
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Risehuxyc

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值