zoukankan      html  css  js  c++  java
  • VisualStudio 2008c#编程规范

     

    命名规范制定意义

       1 方便代码的交流和维护,便于日后自己的再次阅读。
       2
    不影响编码的效率,不与大众习惯冲突。
       3
    使代码更美观、阅读更方便。
       4
    使代码的逻辑更清晰、更易于理解

    命名规范制定原则

    首要原则

    有意义的,描述性的词语来命名。能够一眼看出它作什么。别使用会引起误解的名字。如果名字一目了然,就无需用文档来解释方法的功能了

    1. 除约定俗成的,别用缩写。用name, address, salary等代替 nam, addr, sal

    2. 除用于循环,别使用单个字母的变量象i, n, x 等. 而要使用 index, temp等。
    for ( int i = 0; i < count; i++ ){ ...}

    其他习惯

    l 除了界面控件外,不要使用类型前缀。比如:使用名称amount,而不是 intAmount;

    l 类:使用名词、名词短语命名。比如:public class FileStream;

    l 方法:使用动词、动词短语开始。比如:CreateUser(), RemoveAt()等;

    l 接口:以 I 开始,后面加上名词、名词短语、形容词命名。比如:IDisposable;

    l 常量:所有单词大写,多个单词之间用 "_" 隔开。public const string PAGE_TITLE = "Welcome";

    l 命名空间:基本格式:

    CompanyName/ProjectName.TechnologyName[.Feature][.Design]

    a) CompanyName/ProjectName:公司名、项目名称或产品名称;

    b) TechnologyName:稳定的、公认的技术名称或架构层次名称;

    c) [.Feature][.Design]:可选的功能与设计;

    规范

    1、用pascal规则来命名方法和类.(第一个单词首字母大写,后面连接的每个单词首字母都大写)
    public class DataBase 
    public void GetDataTable()
    2
    类:使用名词、名词短语命名。比如:public class FileStream
    2.
    camel规则来命名局部变量和方法的参数. (第一个单词不大写,后面连接的单词首字母大写
    public void AddUser(string userId, byte[] password)
    { string userName;}

    3.
    所有的成员变量前加前缀 _ 
    public class Database 
    { private string _connectionString; } 

    4.
    接口的名称加前缀 I
    interface ICompare 
    { int compare(); }

    5.
    自定义代码属性类以Attribute结尾
    public class OperationAttribute : Attribute 

    6.
    自定义的异常以Exception结尾 
    public class AppException : Exception 
    7.
    方法的命名.一般将其命名为动宾短语,动词+对象
    GetRecordData();GetPath();CreateFile();
    8.
    代码的缩进.要用Tab,而不要用space.
    9.
    使用带有说明性的变量名。
      (a)避免单字符串的变量名,使用类似于indextemp这样有意义的名字。
      (b)对于publicprotected类型的变量避免使用匈牙利表示法。
      (c)不要缩写单词。
    10.
    所有的类成员变量应该被声明在类的顶部,并用一个空行把它们和方法以及属性的声明区分开.
    11.
    用有意义的名字命名namespace,如:产品名、公司名
    12.
    建议局部变量在最接近使用它时再声明
    13.
    使用某个控件的值时,尽量命名局部变量
    14.
    把引用的系统的namespace和自定义或第三方的用一个换行把它们分开
    15.
    文件名要能反应类的内容,最好是和类同名,一个文件中一个类或一组关连类
    16.
    目录结构中要反应出namespace的层次.
    17.
    大括号"{"要新起一行 .
    18.
    在和你的代码缩进处于同一个级别处为该行代码添加注释

    控件命名

    控件的名称中需要加上前缀,之所以这样做是为了区分界面的控件和普通的对象,由于界面修改往往非常频繁,区分开来能使你更快速的找到控件,从而修改界面。举一个例子:

    界面有10TextBox10Label。一个TextBox对应一个Label,为了完成读写,你至少要有20条语句来从控件进行取、赋值操作,如果有前缀的话,输入this.txt,你就几乎马上能找到这个控件。反之,如果没有前缀,由于窗口或页面对象拥有大量的属性和变量(>100个),你将花费大量时间来查找。另外一个TextBox对应一个Label(一个代表值,一个代表名称),它们往往指同一样事物,如果有前缀,就很容易区分这两个控件。

    控件

    前缀

    控件

    前缀

    控件

    前缀

    Label

    lbl

    CompareValidator

    cv

     

     

    TextBox

    txt

    RangeValidator

    rv

     

     

    Button     

    btn

    RegularExpressionValidator

    rev

     

     

    CheckBox

    chk

    ValidatorSummary 

    vs

     

     

    RadioButton

    rdo

    GridView

    gv

     

     

    CheckBoxList

    cbl

    MultiView

    mv

     

     

    RadioButtonList

    rbl

    View

    vw

     

     

    ListBox

    lst

    HiddenField

    hf

     

     

    DropDownList

    ddl

     

     

     

     

    DataGrid 

    dg

     

     

     

     

    DataList

    dl

     

     

     

     

    Image 

    img

     

     

     

     

    Table   

    tbl

     

     

     

     

    Panel        

    pnl

     

     

     

     

    LinkButton

    lbt

     

     

     

     

    ImageButton  

    imgbtn

     

     

     

     

    Calender

    cld

     

     

     

     

    RequiredFieldValidator 

    rfv

     

     

     

     

  • 相关阅读:
    kali Linux的 安装详细步骤
    kali linux与虚拟机Vmware安装vmware tools(主机与虚拟机的文件拖拽)
    利用locust进行压测,检验一下之前搭建的性能监控平台
    记一个比较有趣的缺陷
    使用soupUI模拟(mock)webservice接口
    python操作postgresql数据库
    python接口自动化(二)——封装需要用到的工具类
    Airtest之web自动化(二)——在本地环境运行airtest脚本
    python接口自动化()一)(设计一款自己的接口自动化框架)
    让http服务人类(python之requests做接口测试)
  • 原文地址:https://www.cnblogs.com/0754ydj/p/1289465.html
Copyright © 2011-2022 走看看