Closed. This question is opinion-based。它当前不接受答案。












想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。

4年前关闭。



Improve this question




C#的通用命名约定是什么?
(函数,类,参数,局部变量, namespace 等)

最佳答案

微软有一个很好的set of guidelines on class library design,其中包括section on naming。简而言之(括号中的示例):

  • 类/结构:PascalCase(WebRequest)
  • 接口(interface):具有I前缀(IDisposable)的PascalCase
  • 方法:PascalCase(ToUpper)
  • 属性:PascalCase(Length)
  • 事件:PascalCase(Click)
  • 命名空间:PascalCase(System.Collections;尽管一部分中有两个单词,但不寻常)
  • 包括参数的非常数变量:camelCased(keySelector)
  • 常数:PascalCase(Int32.MaxValue)
  • 枚举:PascalCase,非标记为单数,标记为复数(HttpStatusCodeBindingFlags)
  • 属性:PascalCase带“Attribute”后缀(ThreadStaticAttribute)

  • 私有(private)名称由您决定,但我倾向于遵循与其他所有名称相同的约定。尽管许多地方都使用“m_”或“_”作为实例变量的前缀,但不建议使用匈牙利表示法(Win32风格)。

    09-09 22:03