使用C#设计模式
我打算在工作中学习C# – 一个中等复杂的(2000行代码)项目。 我有兴趣在整个过程中选择“设计模式”。
任何人都可以建议一本不会承担太多c#专业知识并教授设计模式的书吗? 如果这本书不是专门用于设计模式,那就没关系(它可能是章节之一)。
一本优秀的书是Head First Design Patterns 。 易于理解和遵循,有趣的阅读。
GoF书就是这一切的起点,但我发现它非常干燥且难以掌握。 不是我建议学习的东西。
示例是Java,但概念很好。
你甚至可以得到C#的例子 。
HEAD First Series是一个很好的起点
我想说请使用HEAD First OOAD书
设计模式实际上与语言无关 。 它们与特定语言无关。 因此,例如任何适用于Java的设计模式也适用于C#。
当然有一些模式适用于特定的语言/技术,如MVVM,但我不认为你是用WPF或Silverlight编写的,对吗? 对于Web,您可以选择使用MVC而不是WebForms。
关于书籍,你可以看一看
- 面向对象的思维过程,(第3版)
- 傻瓜的设计模式
由于C#是一种完整的OO语言,因此您必须适应OO设计原则和模式。
我同意其他答案,即设计模式与语言无关。 然而,来自C#背景,我发现Steven John Metsker的 C#设计模式是一本很好的读物,对你来说很重要。
“设计模式”四人帮。
显而易见的选择是C#中的设计模式 ,但我没有阅读它,所以我不能评论它的质量。
编辑:正如Popo所提到的,Design Patterns本书是学习设计模式的好方法,但代码不在C#中: 设计模式:可重用面向对象软件的元素
关于设计模式有几本好书(已经提到过一些)。 我实际上有四个左右。 在学习模式时,我喜欢在不止一本书中阅读它。 通常情景和示例会有所不同,这有助于更好地理解。 Wikipedia.org也是一个非常好的资源。
也就是说,我喜欢花一些时间阅读与模式相关的代码。 显示平台优势的代码很明显,原因很明显。 当你在它时,请查看http://www.dofactory.com 。 如果您希望将GoF和其他企业模式应用于某些真正的编码问题,那么该网站非常出色。 您必须为参考应用程序和设计模式解决方案付费,但有一些示例与Head First书籍,GoF工作以及他们称之为利用.NET的优化变体有关。
我觉得有些书很有用:
- 头脑设计模式:获得创意的好书。
- C#3.0设计模式 (Judith Bishop):不是我最喜欢的代码示例,但通常会有一些关于将模式与其他相关模式进行比较的好处,以及为什么你可以选择一个模式而不是另一个模式。
- 设计模式(Christopher G. Lasater) :一本非常好的书,直截了当。