【问题标题】:Awesome C# Code to learn design patterns and best practices from? [closed]很棒的 C# 代码可以从中学习设计模式和最佳实践? [关闭]
【发布时间】:2009-10-03 00:20:29
【问题描述】:

任何人都知道任何开源 c#/asp.net 项目,这些项目有很好的文档记录、适当地使用设计模式并包含最佳实践?我想阅读高质量的代码,从中学习并将其应用到我的工作中。

【问题讨论】:

    标签: c# design-patterns documentation


    【解决方案1】:

    我强烈推荐阅读Framework Design Guidelines (by Cwalina and Abrams)

    他们设计了大量 .net 基类,并大量讨论 API 可用性。这本书相当容易阅读;它突出了 .net 框架中的许多注意事项。如果您缺钱,可以从msdn 获得一些免费指南。

    【讨论】:

    • 当我说“读一本书”时,对于设计模式,我的意思是他应该读 GOF。对于最佳实践,“框架设计指南”就是我的意思!
    【解决方案2】:

    根据我的经验,你不会通过阅读代码来学习你想要的东西,即使它是高质量的代码。如果不出意外,此类代码中的 cmets 更可能是关于代码试图完成的任务,而不是关于代码如何正确使用设计模式。

    如果你想学习设计模式,那么你需要看一些旨在教你设计模式的东西。可能有一些代码体具有此目的,也许有人可以指出它。在我看来,一段擅长某件事的代码恰好也擅长教你设计模式和最佳实践。

    【讨论】:

      【解决方案3】:

      阅读书籍、阅读博客和编写代码,这些都是您学习设计模式和编程的一般方式

      【讨论】:

      • 很多年轻的开发者不读书。它们都是随机访问”、“中断驱动”和“Google 启用”。顺序读取某些内容对它们来说是陌生的。
      • 嗯,我今年 19 岁,还在上大学,空闲时间我会看书。我自学了 ASP.Net 和 C#,自己看书
      【解决方案4】:

      您可以在 Scott Hanselman 的博客上查看 The Weekly Source Code。他定期列出值得关注的项目。

      【讨论】:

      • 不错,但这些项目会教他设计模式和最佳实践吗?
      • 很公平。我实际上同意你的回答,关于模式的具体点——一本书会更好。我将他的“和”解释为“或”,在“有据可查,适当使用设计模式并包含最佳实践”!
      • 恕我直言,这同样适用于最佳实践。它们很可能被使用,无需解释。他需要解释!
      【解决方案5】:

      对我来说,通过阅读其他人的代码来学习类似于通过参观地方来学习建造,或者通过去餐馆学习烹饪 - 通过最终结果来理解任何事物的基本原理是非常困难的。

      【讨论】:

        【解决方案6】:

        我不得不说umbraco cms。我真的很喜欢他们的数据访问和表示层。它是 MIT 许可证,所以我在我的代码中使用它。此外,代码已被很好地注释掉,因此初学者可以了解代码中发生的事情。

        【讨论】:

        • 它实际上是在教授设计模式和最佳实践,还是只是碰巧悄悄地使用它们而不做解释?
        • 它不教授设计模式,但我很确定任何对设计模式感兴趣并了解它的新手程序员都可以明确地弄清楚发生了什么。
        • OP 说,“我想阅读高质量的代码,从中学习并将其应用到我的工作中。”。据我所知,“弄清楚发生了什么”不是他所要求的。因此,我几乎对你的回答投了反对票。
        • 引用 :: “任何人都知道任何开源的 c#/asp.net 项目,这些项目都有很好的文档记录”。 umbraco 是开源的,他可以阅读 umbraco 发布的代码。正确!
        【解决方案7】:

        最好的学习方法是在贵公司找到一位经验丰富且定期进行代码审查的人。还要求获得他/她的代码审查分发,您可能无法批评他们的工作,但您将了解贵公司的“最佳实践”以及了解您自己项目的内部结构的额外好处。

        如果您只是想了解在此站点之前未使用过的模式的一般知识,可能会对您有所帮助。

        http://entlib.codeplex.com/

        【讨论】:

        • 感谢您的建议和链接。我喜欢这个网站!
        【解决方案8】:

        检查 Blog EngineDas Blog ,它们都是开源的高质量 asp.net 博客。我个人喜欢博客引擎如何处理博客设置、XML&SQL 数据提供者等。两者都很好读...

        据我所知,DotNetNuke 也是开源的,但不知何故,我从未想过并检查过这一点。应该不错吧,它已经存在了很长时间并且众所周知。

        【讨论】:

        • 如果 DotNetNuke 和以前的 PHPNuke 一样(我已经好几年没看过源代码了),那就太可怕了。
        【解决方案9】:

        WordPress 上的以下博客还定期提供有关设计模式的优质内容。 http://en.wordpress.com/tag/design-patterns/

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-09-22
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-09-27
          • 2011-05-04
          • 1970-01-01
          • 2010-09-09
          相关资源
          最近更新 更多