编码指南+最佳实践?

Cha*_*ara 20 c# performance programming-languages coding-style

我找不到任何直接适用于我的查询的问题,因此我将其作为一个新问题发布.如果有任何可能对我有帮助的讨论,请指出并结束问题.

题:

我将介绍C#编码指南,但不应限制编码标准.

所以我有一个粗略的想法,但我认为我需要解决良好的编程实践.所以内容将是这样的.

  1. 基本编码标准 - 套管,格式化等

  2. 良好实践 - 使用Hashset优于其他数据结构,String vs String Builder,字符串的不变性以及有效地使用它们等

真的,我想添加更多好的做法(特别是为了提高性能.)所以想听听一些与C#一起使用的更好的做法.有什么建议???(不需要大的描述:)只是这个想法就足够了.)

Mit*_*eat 21

CSharp 3.0和4.0的编码指南

IDesign编码标准

Lance Hunt的C#编码标准

Brad Abrams的内部编码指南

不出所料,我刚刚发现了一个问题:C#编码标准/最佳实践

  • 我检查过这个,但不幸的是,它没有显示OP的标题. (2认同)

Ste*_*ven 10

以下是一些提示:

  1. 使用FxCop进行静态分析.
  2. 使用StyleCop进行编码样式验证.
  3. 因为值类型的不同的语义,与IDE中的替代颜色提供它们的(去工具/选项/环境/字体和颜色/显示项目和供应用户类型(枚举)用户类型(值类型)与值比如#DF7120 [223,113,32]).
  4. 因为异常往往会在代码中显示错误,所以让IDE中断所有异常.(转到Debug/Exceptions .../Common Language Runtime Exceptions并检查Throw).
  5. 项目设置:禁止不安全的代码.
  6. 项目设置:威胁警告为错误.
  7. 项目设置:检查算术溢出/下溢.
  8. 将变量用于单个明确定义的目标.
  9. 不要使用魔术数字.
  10. 写简短的方法.方法应该只包含一个抽象级别.
  11. 方法永远不会太小(20行的方法被认为是相当大的).
  12. 一种方法应该保护自己免受不良输入.
  13. 考虑使类型不可变.
  14. 不要使用pragma warning disable来禁止代码中的警告.
  15. 不要评论坏代码:重写它.
  16. 在代码中明确记录为什么要吞下异常.
  17. 请注意连接字符串的性能影响.
  18. 永远不要使用goto语句.
  19. 早早失败,快失败.


Reg*_*ent 5

我正在使用 Microsoft 的开发类库设计指南。我认为这是很好的开始。