Head First设计模式(十二) 设计原则 复合模式

复合模式:

模式通常被一起使用,并结合在同一个设计解决方案中。

复合模式在一个解决方案中结合两个或多个模式,以解决一般的或重复发生的问题。

模型-视图-控制器(MVC):

视图:

呈现模型,视图通常直接从模型中取得显示所需的状态和数据。

控制器:

取得用户输入并解读其对模型的含义。

模型:

模型持有所有数据,状态和应用逻辑。模型对视图和控制器是无视的,虽然它提供了操纵和检索其状态的接口,并发送状态改变通知给观察者。

要点:

  1. 模型-视图-控制器(MVC)是复合模式 ,结合了观察者,策略和组合模式
  2. 模型 使用观察者模式,以便可以保持观察者跟新,同时依然保持两者之间解耦。
  3. 控制器视图策略,视图可以使用不同的控制器实现,得到不同的行为。
  4. 视图 使用组合模式实现用户界面。用户界面通常组合了嵌套的组件,像面板,框架和按钮。
  5. 这些模式携手合作,解耦了MVC模型的三个层,这样可以保持设计干净又有弹性。
  6. 适配器模式用于把新的模型适配到已有的视图和控制器。
  7. MVC已经被适配到Web。
  8. 把MVC模式适配到各种客户/服务器的应用结构,就得到许多Web MVC框架。
相关推荐
咖啡八杯13 小时前
GoF设计模式——解释器模式
java·后端·spring·设计模式
大数据新鸟15 小时前
设计模式四大基本原则
设计模式
南一Nanyi21 小时前
依赖注入和控制反转
前端·设计模式·nestjs
tiankong12131 天前
如何拓展多态下的子类
设计模式·c#
jctech1 天前
让「小程序」跑起真正的原生代码:ComboNative 多进程原生小程序运行时 · Alpha 首发
android·设计模式·架构
Kel2 天前
Node.js 单线程高并发:从内核中断到 JS 回调的完整技术栈
设计模式·架构·node.js
解局易否结局3 天前
ArkUI MVI 架构实战:单向数据流设计模式在 HarmonyOS NEXT 中的深度实践
华为·设计模式·架构·harmonyos
解局易否结局3 天前
ArkTS 设计模式与架构进阶:构建可维护的 HarmonyOS 应用
华为·设计模式·架构·harmonyos
happyness443 天前
AI编程与设计模式
设计模式·ai编程
就是小王同学啊3 天前
Spring小技巧之设计模式
sql·spring·设计模式