美文网首页程序员我爱编程技术干货
Java 设计模式(14) —— 复合模式

Java 设计模式(14) —— 复合模式

作者: 磊_lei | 来源:发表于2018-05-26 21:33 被阅读255次

一、复合模式

模式常一起使用,组合在一个设计解决方案中

复合模式在一个解决方案中结合两个或多个模式,能解决一般性或一系列的问题

复合模式

二、示例

本次设计模式讲解中无代码示例,由于复合模式是多个模式的组合,因此可以灵活运用前几篇文章中的设计模式思路

例如有一个复杂的鸭子项目:

  • 多种鸭子,不同鸭子叫声、飞行、游泳方式不同 —— 策略模式
  • 鹅,需要加入几只普通的鹅 —— 适配器模式
  • 要统计鸭子叫声的次数 —— 装饰者模式
  • 统一产生鸭子 —— 工厂模式
  • 要管理一群鸭子 —— 组合模式(迭代器)
  • 追踪某个鸭子的行为 —— 观察者模式

以上一个鸭子项目就可以结合之前文章中的多种模式完成需求,感兴趣的同学可以完成编码示例

三、MVC里的模式

我们熟知的MVC架构就是一个经典的复合模式

  • MVC:Model、View、Controler

    • Model:是程序主体,代表了业务数据和业务逻辑
    • View:是与用户交互的界面,显示数据、 接收输入,但不参与实际业务逻辑
    • Controler:接收用户输入,并解析反馈给 Model
  • MVC里的模式:

    • Model与View和Controler是观察者模式
    • View以组合模式管理控件
    • View与Controler是策略模式关系, Controler提供策略
  • Android开发中的复合模式

    • 整体结构上市MVC模式
    • 生命周期 —— 模板模式
    • 广播 —— 观察者模式
    • 列表View —— 模板

四、总结

在形式上,复合模式确实是多个模式的组合,但满足了这一条并不一定是复合模式,注意它的定义:将多个模式结合起来形成一个“框架”,以解决一般性问题

Java设计模式所有示例代码,持续更新中

相关文章

  • Java 设计模式(14) —— 复合模式

    一、复合模式 模式常一起使用,组合在一个设计解决方案中 复合模式在一个解决方案中结合两个或多个模式,能解决一般性或...

  • 设计模式

    Java 设计模式情景分析 ——单例模式 Java 设计模式情景分析——建造者模式 Java 设计模式情景分析——...

  • Java设计模式教程

    Java设计模式教程 Java工厂设计模式 Java抽象工厂模式 Java单例模式 Java建造者(Builder...

  • Java 设计模式《概述》设计模式,如此简单~

    博客专栏 Java设计模式系列内容,就现在,让设计模式如此简单。 Java设计模式系列文章 Java 设计模式(一...

  • 工厂模式

    java设计模式-工厂模式 工厂模式: 工厂模式是java设计模式里最常用的设计模式之一。 工厂模式属于创建型模式...

  • Android中涉及的模式

    我的Java设计模式-建造者模式 我的Java设计模式-观察者模式 重学设计模式之单例模式

  • 了解外观模式

    java 设计模式 ------外观模式 Java中一共有23种设计模式,每种设计模式各有特...

  • spring框架中的设计模式二

    在这篇文章中,介绍4种设计模式。结构型设计模式:代理和复合模式。行为型设计模式:策略和模板方法模式。 代理模式 面...

  • java建造者模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

  • java单例模式

    其他设计模式java单例模式java建造者模式java策略模式java代理模式java观察者模式java适配器模式...

网友评论

    本文标题:Java 设计模式(14) —— 复合模式

    本文链接:https://www.haomeiwen.com/subject/wdkvjftx.html