了解设计模式用例

时间:2014-10-14 04:49:14

标签: c++ qt design-patterns

我是设计模式的初学者。以下是我的一些用例,我想知道哪些设计模式可以使用

  1. 不同操作系统支持的Firefox。框架本来是一样的,桌面上显示/渲染的应用程序层对于不同的操作系统会有所不同。只是想知道哪种设计模式非常适合它。

  2. 为QT工具上的应用程序创建小部件,可以在不同的操作系统上使用/安装。工厂模式或抽象工厂模式是否支持此方案。

  3. 还想知道在上述场景中是否使用了多种设计模式。

2 个答案:

答案 0 :(得分:2)

  1. 不描述设计模式,而是描述名为Model View Controller(MVC)的架构模式。这是因为视图不同但逻辑代码相同。确实,它经常与Observer模式一起使用,但不是必需的。
  2. enter image description here

    1. 抽象工厂模式,因为不知道究竟会构建哪种窗口小部件。

答案 1 :(得分:0)

  1. 虽然FunctionR提到了使用MVC模式,但仍在使用多种模式。可以使用的一种模式是Abstract FactoryFactory Method;抽象工厂将针对给定的操作系统进行参数化。虽然MVC肯定是一种模式,但它并不是一个经典的四合一模式,你实际上可以将它分解为基础部分。 MVC通常涉及Oberserver模式。例如 经常使用另一种模式Bridge,因为它允许您创建两个单独的层次结构,一个支持Windows的逻辑概念,另一个捕获实现细节。
  2. 与第一个相似的场景;虽然你很可能将两者结合在一起 值得注意的是,QT并未完全使用MVC,而是使用Model/View架构,将ControllerView相结合。