zoukankan      html  css  js  c++  java
  • c#.net设计规范二

    net设计规范(2)

    1.  要把PascalCasing用于由多个单词构成的名字空间,类型以及成员的名字.

    2.  要把camelCasing用于参数的名字.

    3.  要把两个字母的首字母缩写词全部大写,除非是camelCasing风格参数名的第一个单词

               System.IO       

              Public void StartIO(Stream ioStream)

    4.  要把三个或三个以上字母组成的首字母缩写词的第一个字母大写。只有第一个字母大写,除非是camelCasing风格参数名的第一个单词.

                             System.Xml

                            Public void ProcessHtmlTag(string htmlTag)

    5.                Jeffrey Richter : 所有的字段为私有的,实例字段 m_ 前缀,静态字段 s_ 前缀

    6.                要优先使用后缀而不是前缀来表示已有API的新版本

    7.                要用名词或名词短语来给类和结构命名

    8.                要用形容词短语给接口命名

    9.                考虑在派生类的末尾使用基类的名字

    10.              要用单数名词来命名枚举类型

    11.              要用复数名词来命名表示位域的枚举类型

    12.              要用动词或动词短语来命名方法

    13.              要用名词,名词短语或形容词来命名属性

    14.              要用描述集合中项目短语的复数形式来命名集合属性

    15.              要用动词或动词短语来命名事件

    16.              要用名词,名词短语或形容词来命名字段

    17.              结构,枚举是值类型

    18.              类,集合,数组,异常,修饰属性是引用类型

    19.              如果该类型的实例比较小而且生命期比较短,或者经常被内嵌在其他对象中用结构

    20.              如果需要提供多态层次结构的值类型用接口

    21.              要为抽象类定义受保护的构造函数或内部构造函数

    22.              要为值类型实现IEquatable<T>

    23.              要优先使用枚举而不要使用静态常量

    24.              要在想让一个类型能够访问外层类的成员时才使用嵌套类型

    25.              要把最长的重载成员定义成重载成员中唯一的虚成员

    26.              考虑使用属性—如果该成员表示类型的一种逻辑属性

    27.              如果属性的值存储在进程内存中,而且提供属性的目的仅仅为了访问

    28.              考虑通过索引器的方式让用户访问存储在内部数组中的数据

    29.              考虑为代表元素集合的类型提供索引器

    30.              要把静态构造函数声明为私有的

    31.              要用受保护的虚方法来触发事件

    32.              不要使用弱类型集合

    33.              不要使用ArrayList或List<T> 要用Collection<>

    34.              不要使用Hashtable或Dictionary<> 要用IDictionary<>

    35.              要为值类型实现IEquatable<T>

    36.              避免使用System.DBNull,要优先使用Nullable<T>

  • 相关阅读:
    20200925--矩阵加法(奥赛一本通P93 6 多维数组)
    20200924--图像相似度(奥赛一本通P92 5多维数组)
    20200923--计算鞍点(奥赛一本通P91 4)
    20200922--计算矩阵边缘元素之和(奥赛一本通P91 3二维数组)
    20200921--同行列对角线的格(奥赛一本通P89 2 二维数组)
    磨人的.net core 3.1(二) DataReader的问题
    磨人的.net core 3.1(一) CORS的问题
    Vue SSR问题:返回的js打包文件为HTML文件
    axios与.net core API实现文件下载
    .Net Core API中基于System.Threading.Timer的定时任务
  • 原文地址:https://www.cnblogs.com/chjf2008/p/2407229.html
Copyright © 2011-2022 走看看