文章探索:   分类:    关键字:  
  + 栏目导航
  + 相关文章
ASP.NET编程中url编码的转换
Asp.net把UTF-8编码转换为GB2312编码
如何用vb.net获取网页源代码2
如何用vb.net获取网页源代码
VB.Net中关于数组赋值
Imports 语句
Imports 语句分析
VB.NET入门--Imports 语句
asp.net连接Access数据库
Asp.net如何连接Access数据库
ASP.NET技巧:access下的分页方案
ASP.net的ACCESS数据分页方案
ASP.NET与ACCESS结合建设网站的经验总..
编译asp.net文件为dll文件
ASP.NET的错误处理机制
ASP.NET 2.0编程小技巧两则
ASP.NET 2.0发送电子邮件全面剖析之二
ASP.NET 2.0中发送电子邮件剖析之一
如何充分利用ASP.NET 2.0预编译
如何改变asp.net项目名称
轻松加密ASP.NET 2.0 Web程序配置信息
Visual Studio.NET常见问题解答
ASP.Net中将图片数据保存到XML文档
ASP.NET中随机数的产生
提高ASP.Net应用程序性能的十大方法
ASP.NET中利用cookies保持客户端信息
ASP.NET热点问题解答14个
用ASP.NET加密Cookie数据(2)
用ASP.NET加密Cookie数据(1)
ASP.NET中在线用户统计


技术教程 -> ASP.NET教程 ->  
.net命名规范的不同之处
来源:转载   人气:815   录入时间:2007-11-8
     在你的代码中使用注释语句和下边就要讲的统一命名法则是一个很好的习惯,它们会使你的代码更加通用。我(作者)已经在微软工作了近五年的时间了。我不知道你是否跟我一样,在集成和除BUG时遇到很多问题----因为开发者没有遵守统一的命名法则和写注释语句。
    在以前版本的Visual Studio中,微软曾建议使用匈牙利命名法来写代码,并鼓励开发这位写出统一格式的代码而使用相同的法则。例如:
   
   
    变量
    命名
   
    CString
    SzString
   
    char
    CmyChar
   
    char*
    PmyChar
   
    Long
    LMyVariable
   
    LPCSTR
    LpStr
   
    Int
    NMyNumber
   
   
    在最近发布的.net和它的编程语言中,微软更换了他的这一法则。如果你用过Delphi编程,你会看到新的法则与Delphi(Pascal)有些相似。
   
    为避免代码冲突(这样做也会让你的代码更为通用),就要使用命名法则,这是一个很好的编程习惯。好啦,这里介绍一些常用的法则。
   
    ◆命名变量、方法、以及属性
   
    变量、方法和属性的名称的第一个字母应该大写,并且名称应该能表达出它们的用途(或者说是意义)。
   
    变量
    .NET 命名
    匈牙利命名
    描述
   
    Cstring
    EmployeeName
    szName
    Name of an employee.
   
    Int
    AttendanceCounter
    nCounter
    A counter of type long.
   
    Long
    NumberOfBytes
    lBytes
    A long type variable stores bytes.
   
   
    有时我们习惯于在定义中使用下划线 "_",例如: Add_Data(int a, int b). 按照新的命名法则,这不是一个好的编程习惯,虽然它并没有错。你应该将定义 Add_Data 改为 AddData。 这不是微软的标准,你也不是必须按照这些法则。但是,在一些地方你会明白下边这些法则的合理性。
   
    就我个人而言,我更喜欢匈牙利命名法。当然,变量也使用同样的法则。如果你记得匈牙利命名法的话,一个布尔型的变量定义以"b"打头,比如:
   
    BOOL bFlag = TRUE;
   
   
    新的法则不推荐使用Flag 和 "b":
   
    bool IsFileFound = true;
   
    你可以浏览一下MSDN,那里边有更多有关新的法则的说明。
   
   
    ◆命名组件以及集合(Assemblies)
   
    为避免代码冲突, 按照命名法则给你的库(在 .NET 中称为assembly)命名是一个良好的编程习惯。假定你是MindCracker 公司的,你在开发一个用于扩充C# database 类的库, 把它的名字命名为MindCracker.DatabaseAssembly.ADOSet 要比MyAssembly.Database.ADOSet好的多。
   
    再假定你的库有一个方法,它是从表中读取数据,并返回一个数据集。你如果取名为 DataSet return_data()的话,改为DataSet ReturnData()好啦.
   
    你还应该在命名中遵循一个统一的单词顺序。例如,你有俩个表,分别为Employee 和 Manager ,并且你还为它们分别定义了一个向表里边插入一条记录的方法, 那么方法名AppendEmployee 和 AppendManager 要比AppendEmployee 和 ManagerAppend要好。
   
   
    ◆循环
   
    循环或者是其它块儿结构应该对齐左右大括号,就像下边这样:
   
    for (i = 0; i < 100; i++)
    {
    ...
    }
   
    或者
   
    for (i = 0; i < 100; i++){
    ...
    }
   
   
    我更喜欢的二种方法,因为很容易清楚一个块儿结构和嵌套块儿结构。
   
   
    ◆匈牙利命名法(efoxxx附)
   
    匈牙利命名法是一名匈牙利程序员发明的,而且他在微软工作了多年。此命名法就是通过微软的各种产品和文档传出来的。多数有经验的程序员,不管他们用的是哪门儿语言,都或多或少在使用它
   
    这种命名法的基本原则是:
   
    变量名=属性+类型+对象描述
   
    即一个变量名是由三部分信息组成,这样,程序员很容易理解变量的类型、用途,而且便于记忆。
   
    下边是一些推荐使用的规则例子,你可以挑选使用,也可以根据个人喜好作些修改再用之。
   
    ⑴属性部分:
   
    全局变量: g_
   
    常量 : c_
   
    类成员变量: m_
   
    ⑵类型部分:
   
    指针: p
   
    句柄: h
   
    布尔型: b
   
    浮点型: f
   
    无符号: u
   
    ⑶描述部分:
   
    初始化: Init
   
    临时变量: Tmp
   
    目的对象: Dst
   
    源对象: Src
   
    窗口: Wnd
   
   
    下边举例说明:
   
    hwnd: h表示句柄,wnd表示窗口,合起来为“窗口句柄”。
   
    m_bFlag: m表示成员变量,b表示布尔,合起来为:“某个类的成员变量,布尔型,是一个状态标志”。
   




Copyright(C)2007-2024 广州市佳沛数码科技有限公司 版权所有
公司地址: 广州市荔湾区东漖北路560号511室
电话:020-81803473 传真:020-81544987