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

复合模式:

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

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

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

视图:

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

控制器:

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

模型:

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

要点:

  1. 模型-视图-控制器(MVC)是复合模式 ,结合了观察者,策略和组合模式
  2. 模型 使用观察者模式,以便可以保持观察者跟新,同时依然保持两者之间解耦。
  3. 控制器视图策略,视图可以使用不同的控制器实现,得到不同的行为。
  4. 视图 使用组合模式实现用户界面。用户界面通常组合了嵌套的组件,像面板,框架和按钮。
  5. 这些模式携手合作,解耦了MVC模型的三个层,这样可以保持设计干净又有弹性。
  6. 适配器模式用于把新的模型适配到已有的视图和控制器。
  7. MVC已经被适配到Web。
  8. 把MVC模式适配到各种客户/服务器的应用结构,就得到许多Web MVC框架。
相关推荐
qqxhb4 小时前
26|Agent 设计模式:ReAct、Plan-and-Solve 与反射
设计模式·react模式·plan-and-solve·reflection模式
hssfscv5 小时前
软件设计师下午题六——Java的各种设计模式
java·算法·设计模式
zhaoshuzhaoshu7 小时前
设计模式之创建型设计模式详细解析(含示例)
单例模式·设计模式·架构
倚楼盼风雨8 小时前
浅析设计模式-23种设计模式剖析
设计模式
Momentary_SixthSense1 天前
设计模式之工厂模式
java·开发语言·设计模式
Java码农也是农1 天前
Multi-Agent 系统设计模式
设计模式·agent·multi-agent
sg_knight1 天前
设计模式实战:状态模式(State)
python·ui·设计模式·状态模式·state
workflower1 天前
深度学习是通用型人工智能的基础
人工智能·深度学习·设计模式·软件工程·软件构建·制造
Meme Buoy1 天前
11.3设计模式-新
设计模式
cmpxr_2 天前
【单片机】常用设计模式
单片机·嵌入式硬件·设计模式