类中项目的顺序:字段,属性,构造函数,方法

在类结构方面,是否有正式的C#指导项目顺序?

它会去:

  • 公共领域
  • 私人领域
  • 属性
  • 构造函数
  • 方法
  • 我很好奇,如果有关于物品顺序的硬性规定? 我有点太过分了。 我想坚持一个特定的标准,所以我可以在任何地方做到这一点。

    真正的问题是我的更复杂的属性最终看起来很像方法,并且在构造函数之前他们感觉不在顶部。

    任何提示/建议?


    根据StyleCop规则文档的顺序如下。

    在类,结构或接口内:(SA1201和SA1203)

  • 常量字段
  • 字段
  • 构造函数
  • 终结者(破坏者)
  • 代表
  • 活动
  • 枚举
  • 接口
  • 属性
  • 索引
  • 方法
  • 结构
  • 在这些组中的每个组中按顺序访问:(SA1202)

  • 上市
  • 内部
  • 内部保护
  • 保护
  • 私人的
  • 在每个访问组中,按静态排序,然后是非静态排序:(SA1204)

  • 静态的
  • 非静态
  • 在每个静态/非静态字段组中,按只读顺序排序,然后非只读:(SA1214和SA1215)

  • 只读
  • 非只读
  • 展开的列表是130行,所以我不会在这里展开。 展开的方法部分是:

  • 公共静态方法
  • 公共方法
  • 内部静态方法
  • 内部方法
  • 保护内部静态方法
  • 保护内部方法
  • 保护静态方法
  • 受保护方法
  • 私有静态方法
  • 私人方法
  • 该文档指出,如果规定的顺序不合适 - 比方说,正在实现多个接口,并且接口方法和属性应该组合在一起 - 则使用分部类将相关的方法和属性组合在一起。


    通过可视性或项目类型(字段,属性,方法等)进行分组,而不是按功能进行分组?


    我建议使用IDesign或Brad Abram网站上列出的编码标准。 那些是我找到的最好的两个。

    布拉德会说...

    类成员应该按照字母顺序排列,并分组成部分(字段,构造函数,属性,事件,方法,专用接口实现,嵌套类型)

    链接地址: http://www.djcxy.com/p/18401.html

    上一篇: Order of items in classes: Fields, Properties, Constructors, Methods

    下一篇: Visual Studio debugging/loading very slow