- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
编码规范V1.0.0
编号:GF_Code_V1.0.0
C#编码规范
保密级别:保密
文件状态
[ ] 草稿文件
[√] 正式文件
[ ] 更改正式文件 文件标识: 当前版本: V 作 者: 审 核: 完成日期:
版本历史
版本/状态 作者 参与者 起止日期 备注 V 2011-09-10至2011-11-11
目 录
1 文档描述 5
1.1 目的 5
1.2 读者对象 5
1.3 适用范围 5
1.4 定义 5
2 编程准则 5
2.1 变量使用 5
2.2 数据库操作 6
2.3 对象使用 6
2.4 结构化要求 6
2.5 函数返回值原则 7
2.6 关键字使用原则 7
2.7 架构使用原则 7
3 编码规则 7
3.1 错误检查规则 7
3.2 大括号规则 8
3.3 缩进规则 9
3.4 If Then Else规则 9
3.5 Switch… Case…规则 10
3.6 单语句规则 10
3.7 单一功能规则 10
3.8 独立赋值规则 10
3.9 模块化规则 10
3.10 交流规则 11
4 命名规范 11
4.1 命名规范 11
4.2 变量(Variable)命名 11
4.3 常量(const)命名 14
4.4 类(Class)命名 14
4.5 接口(Interface)命名 15
4.6 方法(Method)命名 15
4.7 命名空间(NameSpace)命名 15
5 注释规范 15
5.1 概述 15
5.2 自建代码文件注释 16
5.3 模块(类)注释 16
5.4 类属性注释 17
5.5 方法注释 17
5.6 代码间注释 17
6 代码包的版本号 18
6.1 代码包的标识 18
7 输入控制校验规则 19
8 附件 19
8.1 控件缩写前缀 19
引言
目的
为了统一公司软件开发的设计过程中关于代码编写时的编写规范和具体开发工作时的编程规范,保证代码的一致性,便于交流和维护,特制定此规范。
读者对象
参与本项目开发工作的软件工程师
适用范围
软件项目开发的代码编写阶段和后期维护阶段。
定义
灰色字体表示部分为优先原则,非必行约定。
蓝色字体表示部分为代码演示部分。
绿色字体表示部分为代码注释演示部分。
格式描述中,符号[]表示必选元素。
格式描述中,符号()表示可选元素。
编程准则
变量使用
a)?一个变量只能有一个用途;变量的用途必须和变量的名称保持一致。
b)?所有变量都必须在类和函数最前面定义,并分类排列。
数据库操作
a)?? 查找数据库表或视图时,只能取出确实需要的那些字段。
b)?? 使用无关联子查询,而不要使用关联子查询。
c)?? 清楚明白地使用列名,而不能使用列的序号。
d)?? 用事务保证数据的完整性。
对象使用
尽可能晚地创建对象,并且尽可能早地释放它。
关于对象的创建,尽量使用工厂模式集中生产。
结构化要求
a)???禁止出现两条等价的支路。
例如:if (a == 2)
???????????? //
?????? else if (a== 3)
???????????? //
?????? else if (a == 2)
???????????? //
?????? else
?????????? //??
b)?避免使用GOTO语句
c)?用 IF 语句来强调只执行两组语句中的一组。尽量不使用 ELSE GOTO 和 ELSE RETURN。
d) 用Switch… Case…实现多路分支,避免使用多IF嵌套
e) 避免从循环引出多个出口。
f) 函数只有一个出口。
g)在同一个类中读写数据源数据要保持一致
如:
class hello
{
????private string _Name;
public string Name
{
Get{return _Name;}
Set{_Name=value;}
}
Public string GetName()
{
//这里应该读写Name属性应该统一为this.Name而不是_Name
If(!string.isNullOrEmpty(this.Name))
{
Return string.format(“My name is {0}”, this.Name);
}
}
}
函数返回值原则
1)? 函数返回值
避免使用结构体等复杂类型
关键字使用原则
partial关键字必需只作用于同一架构层上(在不同架构层上需要实现同一个类功能的,使用继承)
partial关键字最好只作用于同一命名空间上
架构使用原则
低层类不允许使用高层类
低层类库不允
您可能关注的文档
- 2.28教案.doc
- 一二年级常见偏旁表--补全版.docx
- 本色广告--环氧地坪2013.2.28(车库).doc
- 格格2月28日试题.doc
- 000551510企业会计学.doc
- (中级会计实务) 记住这5步,拿下合并报表90%的题目!.docx
- 02-合并财务报表习题.doc
- 05年10月企业会计学模考试卷.doc
- --会计基础习题---333.doc
- 13245_00159_2012_10_高级财务会计.doc
- 2025福建德化陶瓷产业创新发展研究院招聘笔试历年参考题库附带答案详解.docx
- 2025河南潢川县第三水厂操作工笔试笔试历年参考题库附带答案详解.docx
- 2025山东桓台县金海公有资产经营有限公司面向社会招聘考试有关笔试历年参考题库附带答案详解.docx
- 2025山东济南产业发展投资集团有限公司社会招聘10人笔试历年参考题库附带答案详解.docx
- 会昌县独好文化发展有限责任公司招聘笔试历年参考题库附带答案详解.docx
- 2025山东东明县县内部分企业高层次人才38人笔试历年参考题库附带答案详解.docx
- 2025浙江台州市国有资产投资集团有限公司招聘3人笔试历年参考题库附带答案详解.docx
- 央企中国绿发投资集团有限公司招聘笔试历年参考题库附带答案详解.docx
- 2025山东青岛国信发展(集团)校园招聘笔试历年参考题库附带答案详解.docx
- 2025上海新松江置业(集团)有限公司招聘7人笔试历年参考题库附带答案详解.docx
文档评论(0)