GoF 设计模式与 SOLID 之间的联系

问题描述 投票:0回答:3

我有兴趣知道哪种 GoF 设计模式可以直接转化为特定的 SOLID 原则?例如,我认为(在我看来)策略模式可以转化为依赖倒置原则。

不幸的是,我找不到任何研究他们关系的文献。如果能从彼此的角度更有效地学习,那就太好了。

oop solid-principles design-patterns
3个回答
4
投票

GoF 的大多数设计模式都应用了 SOLID 原则。

  • S:单一责任原则:属于 DP,只有一项职责
  • O:开闭原则:很简单 扩展新功能,例如策略模式 允许您实现额外的算法,而无需 更改包含其他算法的其他类
  • 里氏替换原则:也适用于策略等

1
投票

GOF 是模式,即针对重复出现的问题的经过验证的设计解决方案。 SOLID 是原则,不依赖于任何特定的问题领域,因此在任何情况下都是如此


0
投票

有一篇论文低级设计的参考模型,其中列出了表 3 中某些模式的 SOLID 属性:

  • 门面:ISP、DIP
  • 责任链:SRP、OCP、LSP、ISP、DIP
  • 装饰器:SRP、OCP、LSP、ISP、DIP
  • 工厂:SRP、OCP、ISP、DIP
  • 构建器:SRP、ISP、DIP
  • 适配器:SRP、ISP、DIP

我希望看到针对所有模式的此类研究,但我不知道类似的论文。

© www.soinside.com 2019 - 2024. All rights reserved.