在以前版本的Visual Studio中,微软曾建议使用匈牙利命名法来写代码,并鼓励开发这位写出统一格式的代码而使用相同的法则。在最近发布的.NET和它的编程语言中,微软更换了他的这一法则。如果你用过Delphi编程,你会看到新的法则与Delphi(Pascal)有些相似。

从我学习编程以来Visual Studio是6.0,之后有2003版和2005版,到现在有2008版了; .NET framwork类库也从以前的1.1、2.0、3.0到现在的3.5,我学C++之时用的是Visual Studio 6.0,那时老师还介绍使用匈牙利命名法,不过之后到.NET平台下微软不建议用匈牙利命名法了,这可以从微软根据其所推出产品的示例和.NET framwork类库参考看到,在C#中,以帕斯卡命名法和骆驼命名法居多。我个人习惯骆驼命名法,事实上在.NET framwork类库参考中使用的就是帕斯卡命名法和骆驼命名法。

以下就是 帕斯卡命名法和骆驼命名法的具体使用。

编程规范

类型

命外规则

说明

命名空间 namespace

Pascal

以.分隔,其中每一个限定词均为Pascal命名方式 如ExcelQuicker.Work

类       class

Pascal

每一个逻辑断点首字母大写

如public class MyHome

接口     interface

IPascal

每一个逻辑断点首字母大写,总是以I前缀开始,后接Pascal命名

如public interface IBankAccount

方法     method

Pascal

每一个逻辑断点首字母大写

如private void SetMember(string)

枚举类型enum

Pascal

每一个逻辑断点首字母大写

委托    delegate

Pascal

每一个逻辑断点首字母大写

局部变量

方法的参数

Camel

首字母小写,之后Pascal命名

如string myName

具体应用的一般良好习惯

1、

成员变量前加前缀 _

2、

接口的名称加前缀I

3、

自定义的属性以Attribute结尾,如:

public class AuthorAttribute :Attribute

{

}

4、

自定义的异常以Exception结尾,如:

public class AppException: Exception

{ }

5、

方法的命名。一般将其命名为动宾短语,如:

ShowDialog()

CreateFile()

6、

代码的缩进。要用Tab,而不要用space.

7、

局部变量的名称要有意义。不要用x,y,z等等(除用于For循环变量中可使用i,j,k,l,m,n)。

8、

所有的成员变量声明在类的顶端,用一个换行把它和方法分开。

9、

用有意义的名字命名namespace,如:产品名、公司名。

10、

生成和构建一个长的字符串时,一定要使用StringBuilder,而不用string。

11、

始终使用”{ }”包含if下的语句,即使只有一条语句。

12、

把相似的内容放在一起,比如数据成员、属性、方法、事件等,并适当的使用#region…#endregion

C# Pascal 命名规则的更多相关文章

  1. [No00009E]几种常见的命名规则

    变量命名规则 必须遵循的命名规则 1.    变量名首字母必须为字母(a-z A-Z),下划线(_),或者美元符号($)开始php编程中所有变量必须以$开始. 2.    变量名只能是字母(a-z A ...

  2. .NET 基础 一步步 一幕幕 [注释、命名规则、访问修饰符、数据类型、常量、变量]

    注释.命名规则.访问修饰符.数据类型.常量.变量 话说一个不会写注释的程序猿的不是一个好吃货,我们本篇就从注释开始说起好了. 在C#中有三种注释: 第一种:单行注释  以//开头,后面的就是注释内容 ...

  3. html页面的CSS、DIV命名规则

    CSS命名规则 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中:l ...

  4. C++变量命名规则

    转自:http://www.cnblogs.com/finallyliuyu/archive/2010/09/25/1834301.html 浅谈C++变量命名规则 不知道别的公司如何,反正我现在的公 ...

  5. C#中的变量及命名规则

    变量: 1.作用 :可以让我们在计算机中存储数据 2.语法:变量类型    变量名=赋值: 3.常用的数据类型:  int   整数类型  取值范围:最大2147483647;最小-214748364 ...

  6. C# 中的命名规则

    需要注意: C# 区分大小写 ,若有int a 和 int A ,则a, 和 A是不同的 普通字段,属相,方法,类的命名规则: C#中推荐使用  camelCasing ,和 PascalCasing ...

  7. thinkphp学习笔记1—目录结构和命名规则

    原文:thinkphp学习笔记1-目录结构和命名规则 最近开始学习thinkphp,在下不才,很多的问题看不明白所以想拿出来,恕我大胆发在首页上,希望看到的人能为我答疑解惑,这样大家有个互动,学起来快 ...

  8. windows编程命名规则

    转自:http://blog.sina.com.cn/s/blog_52cbfc3f0100fdy6.html 匈牙利命名法是一种编程时的命名规范.基本原则是:变量名=属性+类型+对象描述.其中每一对 ...

  9. C#常用的命名规则汇总

    C#常用的命名规则汇总 来源 https://www.cnblogs.com/pengyouqiang88/p/5021128.html 本文转载自脚本之家 本文详细汇总了C#常用的命名规则.分享给大 ...

随机推荐

  1. 深入redis内部之redis启动过程之二

    接上文,继续分析代码 1. 设置线程安全模式 zmalloc_enable_thread_safeness();/*设置线程安全标识符为1*/ void zmalloc_enable_thread_s ...

  2. [转]NLog Layout Renderers ${}

    https://github.com/nlog/NLog/wiki/Layout-Renderers Layout renderers are template macros that are use ...

  3. [译]理解 Windows UI 动画引擎

    本文译自 Nick Waggoner 的 "Understand what’s possible with the Windows UI Animation Engine",已获原 ...

  4. C#学习笔记8

    1.泛型的约束: (1)接口约束: (2)基类约束,基类约束必须放在第一(假如有多个约束): (3)struct/class约束: (4)多个参数类型的约束,每个类型参数都要用where关键字: (5 ...

  5. jquery获取不了ajax动态添加的内容的解决办法

    在HTML页面的一个button <div class="ajaxClick"> <button>内容</button> </div> ...

  6. String字符串操作

    char chars[] ={'a','b','c'}; String s = new String(chars); int len = s.length();//字符串长度 System.out.p ...

  7. 使用CKRule实现促销管理系统

    1, 常见的促销模型 促销管理系统在很多地方都有使用,大家去超市就经常体现到,感受到,不少中小型单位都其促销活动,要搞促销活动最好是有应用软件支持,这样就比较灵活管理也方便.而依靠手工处理的话效率会比 ...

  8. Android java获取凌晨的时间戳

    这两天有一个需求是查询用户匹配的推荐信息,包含一个有效时间段,以天为单位,0时0分0秒这种. 通常java中有两种方案: 第一种:Calendar.这种比较简单,也最常见.代码如下: Calendar ...

  9. CSS中的各类选择器

    属性选择器 结构性伪类选择器 UI状态伪类选择器 CSS其他选择器

  10. file中mkdirs和mkdir的区别-文件上传

    mkdirs()可以建立多级文件夹, mkdir()只会建立一级的文件夹, 如下: new File("/tmp/one/two/three").mkdirs(); 执行后, 会建 ...