2.8 KiB
2.8 KiB
title | localeTitle |
---|---|
Design Patterns | 设计模式 |
设计模式
程序员和软件架构师使用设计模式来解决软件架构中常见的,反复出现的问题 。这些模式为面向对象编程提供了一种与语言无关的方法,可帮助开发人员遵循良好应用程序设计的原则。
为什么设计模式?
按设计模式开发具有以下几个优点:
- 遵循良好的编程原则(如**SOLID 原则)更容易。**
- 它使代码块更小,因此代码更容易测试和调试
- 它有助于保持代码松散耦合,因此代码更易于重新使用和更新新应用程序
- 它使代码更容易理解 ,因此新的贡献者可以迅速提升
使用设计模式需要进行一些权衡,开发新手的开发人员应该记住以下内容:
- 编程中没有银子弹 ,设计模式也不例外
- 设计模式为代码添加了一层抽象 ,增加了初始设计和开发工作
- 过度使用设计模式或强制它们适合使代码更难理解
语言支持
设计模式源于静态类型语言的世界,如C ++,Java和C#。关于按设计模式进行开发的大多数资源都基于这些语言之一。
尽管如此,设计模式只是:模式。它们不是类或接口之类的实现,并且不受任何一种语言的约束 。
在动态语言中学习设计模式时,如果特定模式看起来不必要复杂或反直觉,请回想起它们的起源。动态语言的开发人员仍然可以使用以下设计模式并从中受益,尽管可能需要更多的研究才能完全理解它们。
用途
设计模式非常适合以简单且可重复的方式解决基础编码问题。从广义上讲,它们分为三类:
- 创建模式描述了如何创建新对象
- 结构模式描述了如何从其他对象中组合对象
- 行为模式描述了对象如何相互通信
这些任务都可以在没有设计模式的情况下执行,但设计模式可以降低您违反良好实践并创建难以维护的代码的风险 。
更多信息:
- Kamran Ahmed的“人类设计模式”是对特定模式的精彩介绍
- 设计模式是开始这种实践的书
- Martin Fowler的企业应用程序架构模式为企业应用程序提供了一套更复杂的模式
- Sourcemaking提供在线资源,其中包含有关设计模式的其他示例和信息