微软内部代码规范

时间:2022-07-13 21:14:14 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
微软内部代码规范

一. 写在前头

1. 微软内部的代码编写规范,对于我们来说,有时候觉得很没必要,甚至是猜不透为什么要规定这样写,但是,既然微软内部的员工都按照这个规范来编写代码,一定是有自己的原因的 2. 一款名为StyleCop的软件,就是用来检查这些规范的,而Microsoft Source Analysis for C#则是专门针对C#而且与.net兼容的工具

3. 安装以上工具之后,你可以在代码编辑器中右击->Run StyleCop

系统就会把所有违反此语法规则的代码以警告方式提醒 4. 你会发现,跟你平常的习惯会有很大出入,如果你觉得自己有一套规范,那你大可以看完这篇后的3秒钟内全部忘掉 5. 本文只写出比较特别的规则,并不是全部规则。

二. 代码放置位置

1. 所有资源(.cs文件中一般写在最开始的using .. )要放在命名空间内,如:

namespace HelloWorld {

using System;

using System.Collections; …… }

2. 文件最开头要带copyright author的标签,如:

// // Copyright (C) 2009 sinners. All rights reserved //

// gosion poon


3. 可访问性顺序应该为:public->protected->private 4. 方法成员属性顺序应该为:Fields->Methods->Properties 5. 每个方法成员属性以及类都需要摘要段,摘要不能为空,传入传出参数必须注释且所有摘要和注释不能少于10个字母 6. 构造函数摘要必须以Initializes a new instance of the 类名 class开头

7. 属性必须以Gets or sets a value开头,而Bool返回值的属性必须以Gets or sets a value indicating whether开头 8. 所有代码块必须以{}作为开始和结束 9. Ifwhilefor 等,条件与操作必须分属不同的行

10. 不同条件之间,例如if操作完后面没有跟着else的情况下,续代码必须在开始空出一行空行

三. 命名规则

1. 变量名不能以_开头,不能以类似m_形式开头或中间带_,个人建议,如果类似常量MESSAGE_ERROR形态的,_可以用x代替,即MESSAGExERROR

2. 如果是一般的变量,还是乖乖的用小写字母开头并不带下划线等符号吧。可能你在想:不能以类似m_形式开头,那么我以mm_开头总可以吧?恭喜你,我很负责任的告诉你,工具说你这样的写法有点类似匈牙利的命名规则,建议你不要这样做。

3. 以下是官方给出的通用规则


1) 请选择易读的标识符名称。例如,英文属性名称 HorizontalAlignment

AlignmentHorizontal 更具可读性。

2) 可读性比简洁性更重要。属性名称 CanScrollHorizontally ScrollableX(指 X

轴,但意义不明确)更好。

3) 不要使用下划线、连字符或任何其他非字母数字字符。 4) 不要使用匈牙利表示法。

5) 避免使用与常用编程语言的关键字冲突的标识符。

4. 请参考:http://msdn.microsoft.com/zh-cn/library/ms229045.aspx

四. 类型设计准则 五. 成员设计准则

1. 变量都应该为私有(private),通过公有属性访问,或者用自动生成的方式(Auto Create)

2. 除非是必须覆盖父类的方法成员属性,否则用this.base.更好

3. 所有在本类中调用到已定义的方法成员属性,在前面加上this.

六. 扩展性设计 七. 异常设计准则 八. 使用准则


本文来源:https://www.wddqw.com/doc/26b373350b4c2e3f572763b5.html