我知道私人领域是第一位的。根据C#代码风格应该在哪里放置其他成员?
我的意思是:private / protected / internal / public fields / properties / methods / events。 我总是在课堂的最后部分安排活动。我有时会在使用它的公共财产附近放置私人方法。我不认为这是正确的位置,但我不能选择它和许多其他成员的地方。
答案 0 :(得分:5)
根据StyleCop(Microsoft制作的样式检查程序),正确的顺序是:
相同类型的相邻元素 必须放在以下位置 按访问级别排序:
- 公共
- 内部
- 受保护的内部
- 保护
- 私人
- 规则SA1202
您可能也对规则SA1201感兴趣,规则SA1201处理元素类型的顺序(即,字段先行,然后是构造函数,......)。
要阅读有关StyleCop规则指南的更多信息,请转到此处:http://stylecop.codeplex.com/releases/view/44839
答案 1 :(得分:4)
这是coding guidelines的一个例子(见最后,“文件组织”)。关于班级成员的顺序,有很多而不是所有人都同意。
作为个人喜好,我更喜欢使用#region - #endregion blocks按顺序对常量,字段,属性,构造函数,成员(公共优先,然后是内部,然后保护,然后是私有)进行分组。
我最后留下私人成员的原因是,当我阅读代码时,我希望在知道如何在私有成员中实现它之前,将该类的接口信息提供给外部世界。
答案 2 :(得分:1)
应使用确定的布局
将类组织到应用程序中的区域中由您的应用程序架构师。这些可能基于可访问性,类型或功能。有关应用程序中使用的布局策略,请咨询您的架构师。
示例:
// Class layout based on accessibility
class Purchasing
{
#region Main
#region Public
#region Internal
#region Protected
#region Private
#region Extern
#region Designer Generated Code
}
准则:
o在应用程序的所有类中始终使用相同的布局。
o如果不需要相关的类元素,则省略区域。
o不应手动修改由Visual Studio的可视设计器创建的Designer生成的代码区域。它应该只包含设计者生成的代码。
答案 3 :(得分:0)
我更喜欢
我认为在这种代码风格中你没有太多错误。
答案 4 :(得分:0)
做适合自己的事 - 只要保持一致。
答案 5 :(得分:0)
我认为,除非你弄乱你的代码弄乱所有东西并将它们放在一起,否则你可以选择你喜欢的顺序。
只要您与之保持一致,就没有正确的顺序。