什么是设计模式?

高级概述

OOP(面向对象编程)大师们曾经得出这样的结论:每次在应用程序设计中遇到问题时,都重新发明轮子是毫无意义的。他们知道他们不应该总是从头开始解决问题。相反,他们收集并分类了许多项目中重复出现的结构化代码的经过战斗测试的方法。这就是为什么在许多系统、应用程序和框架中我们会看到重复的模式和类图。

重用已知的模式并不特定于软件开发。看看你的周围。在文学中,《圣经》或其他古代文献中的主题、图案和符号在现代作品中仍然存在。这也适用于生活的其他方面。

以前有效的模式现在可能也有效。从理论上讲,这是设计模式给我们的承诺。

在介绍任何特定的设计模式之前,我们首先来讨论它们的组成以及如何对其进行分类。

设计模式结构

根据GOF,设计模式由四个元素组成:

  1. 名称——说出一两个这个模式的单词
  2. 问题描述——描述何时使用给定的模式
  3. 解决方案——抽象描述模式中的类、对象及其关系
  4. 结果——使用模式的利弊

每种模式都属于以下三种类型中的一种:

  1. 创建——负责对象创建的模式。
  2. 结构——组合类和对象的方式所涉及的模式。
  3. 行为——描述对象和类工作、共享任务和合作方式的模式。

除此之外,还有一个更重要的事情将设计模式分开:

范围

类范围——当模式被归类为类范围时,这意味着它的目标是在编译时使用继承实现的

对象范围——当模式被归类为对象范围时,它的目标是在运行时通过组合实现的

总结

设计模式是对常见问题进行了久经考验、经过验证的通用解决方案。它描述了如何解决给定的问题,并可以在许多不同的情况下使用。

原文链接: https://dev.to//pjeziorowski/what-are-design-patterns-310j

你可能感兴趣的:(oop,设计模式)