zoukankan      html  css  js  c++  java
  • 北风设计模式课程---创建模式、结构模式、行为模式的区别

    北风设计模式课程---创建模式、结构模式、行为模式的区别

    一、总结

    一句话总结:

    创建模式:【关注对象的创建】:创建型模式,就是创建对象的模式,抽象了实例化的过程。
    结构模式:结构型模式是为解决【怎样组装现有的类】,设计他们的交互方式,从而达到实现一定的功能的目的。
    行为模式:行为型模式涉及到【算法和对象间职责的分配】。实际上它所牵涉的不仅仅是类或对象的设计模式,还有它们之间的通信模式。

    1、创建模式、结构模式、行为模式 分别常用的设计模式有哪些?

    创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。
    结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。
    行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式(责任链模式)、访问者模式。

    二、设计模式(1)-创建模式、结构模式、行为模式的区别

    参考:设计模式(1)-创建模式、结构模式、行为模式的区别 - 恶性佛 - CSDN博客
    https://blog.csdn.net/qq_29994609/article/details/51914046

    创建模式

    创建型模式,就是创建对象的模式,抽象了实例化的过程。
    它帮助一个系统独立于如何创建、组合和表示它的那些对象。
    关注的是对象的创建,创建型模式将创建对象的过程进行了抽象,也可以理解为将创建对象的过程进行了封装,作为客户程序仅仅需要去使用对象,而不再关心创建对象过程中的逻辑

    结构模式

    结构型模式是为解决怎样组装现有的类,设计他们的交互方式,从而达到实现一定的功能的目的。
    结构型模式包容了对很多问题的解决。例如:扩展性(外观、组成、代理、装饰)封装性(适配器,桥接)。

    行为模式

    行为型模式涉及到算法和对象间职责的分配。
    行为模式描述了对象和类的模式,以及它们之间的通信模式。
    行为型模式刻划了在程序运行时难以跟踪的复杂的控制流可分为行为类模式和行为对象模式

    行为模式使用继承机制在类间分派行为。
    行为对象模式使用对象聚合来分配行为。
    一些行为对象模式描述了一组对等的对象怎样相互协作以完成其中任何一个对象都无法单独完成的任务。

    三、设计模式三大分类——创建模式、结构模式、行为模式

    参考:设计模式三大分类——创建模式、结构模式、行为模式 - 青衣煮茶 - CSDN博客
    https://blog.csdn.net/wfy2695766757/article/details/86546299

    设计模式可以分为创建型、结构型、和行为型模式。

    创建型模式对类的实现化过程进行了抽象,能够使软件模块做到与对象的创建和组织无关。

    结构型模式描述类和对象之间如何进行有效的组织,以形成良好的软件体系结构,主要的方式是使用继承关系来组织各个类,一个最容易的例子就是如何用多个继承组织两个以上的类,结果产生的类结合了父类所有的属性,结构型模式特别适用于和独立的类库一起工作。

    行为型设计模式描述类和对象之间如何交互及如何分配职责,实际上它所牵涉的不仅仅是类或对象的设计模式,还有它们之间的通信模式。

    创建型模式:单例模式、抽象工厂模式、建造者模式、工厂模式、原型模式。

    结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式。

    行为型模式:模版方法模式、命令模式、迭代器模式、观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式(责任链模式)、访问者模式。

     
  • 相关阅读:
    1094. Car Pooling
    121. Best Time to Buy and Sell Stock
    58. Length of Last Word
    510. Inorder Successor in BST II
    198. House Robber
    57. Insert Interval
    15. 3Sum java solutions
    79. Word Search java solutions
    80. Remove Duplicates from Sorted Array II java solutions
    34. Search for a Range java solutions
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/11031062.html
Copyright © 2011-2022 走看看