【问题标题】:Coding guidelines + Best Practices? [closed]编码指南 + 最佳实践? [关闭]
【发布时间】:2010-05-07 07:55:08
【问题描述】:

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

问题:

我将介绍 C# 编码指南,但不应局限于编码标准。

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

  1. 基本编码标准 - 大小写、格式等

  2. 良好实践 - Hashset 在其他数据结构上的使用、String 与 String Builder、String 的不变性以及有效使用它们等

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

【问题讨论】:

  • 这应该是社区维基。
  • 小心创建专有编码标准。编码标准通常是出于好意,但当它们与 Microsoft 发布的内容相反时,往往会激怒开发人员。创建一个包含 MSDN 链接的文档;)
  • 一篇写得很好的文章,包含最新的指南和提示codingular.com/2017/05/…

标签: c# performance programming-languages coding-style


【解决方案1】:

【讨论】:

  • 我检查了这个,但不幸的是,它没有与 OP 的标题一起显示。
【解决方案2】:

这里有一些提示:

  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. 尽早失败,快速失败。

【讨论】:

    【解决方案3】:

    我正在使用 Microsoft 的 Design Guidelines for Developing Class Libraries。 而且我认为这是很好的开始。

    【讨论】:

      【解决方案4】:
      • 基本编码标准 - 确保它是一致的。即使他们不遵循this document on msdn 中规定的约定。我认为一致性在这里真的很关键。

      • 单元测试 - 在这里你不会出错。

      • 安全性 - 谈论确保在传递敏感数据时它是安全的。

      • 性能 - 你知道,我个人认为让应用程序正确,然后查看性能是我的工作。在编写代码时,我确实将它放在脑海中,所以最后会出现一些细微的调整。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-06-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-25
        • 2010-09-27
        • 2011-11-05
        • 2011-02-11
        相关资源
        最近更新 更多