༺༽༾ཊ—设计-简介-模式—ཏ༿༼༻

        我对设计模式的理解就是一种可复用的面向对象的设计工具,它与代码无关,我们可以利用设计模式设计出高内聚、低耦合的应用程序,并且最大程度实现程序的复用,以应对复杂的需求变化。

        程序的可复用性就是用已存在的程序模块进行更新;

        高内聚就是我有一组相互关联,紧密依赖的一些方法,我们需要将这些方法封装在一个类中

        低耦合就是减少两个类或者多个类之间的相互依赖;

        为了设计出高内聚、低耦合的应用程序,总结了七个原则

        1.单一职责原则;

        2.依赖倒置原则;

        3.开闭原则;

        4.接口隔离原则;

        5.里氏替换原则;

        6.合成复用原则;

        7.迪米特原则;

        设计模式大致分为三种类型:

        1.创建型设计模式

                用于对象的创建,有五种类型:

                ①单例(Singleton)模式;

                ②工厂方法(FactoryMethod)模式;

                ③抽象工厂(AbstractFactory)模式;

                ④建造者(Builder)模式;

                ⑤原型(Prototype)模式;

        2.结构型设计模式

                用于对象和对象的组合/类与类的组合,组合后的对象或者类更利于扩展,有七种类型:

                ①组合(Composite)模式;

                ②适配器(Adapter)模式;

                ③包装器(Wrapper)/  装饰器(Decorator)模式;

                ④桥接(Bridge)模式;

                ⑤外观(Facade)模式;

                ⑥享元(Flyweight)模式;

                ⑦代理(Proxy)模式;

        3.行为型设计模式

                用于解决对类和对象之间的交互与方法分配问题,有十一种类型:

                ①状态(State)模式;

                ②策略(Strategy)模式;

                ③命令(Command)模式;

                ④访问者(Visitor)模式;

                ⑤解释器(Interpreter)模式;

                ⑥观察者(Observer)模式; 

                ⑦责任链(ChainOfResponsibility)模式;

                ⑧迭代器(Iterator)模式;   

                ⑨中介者(Mediator)模式;

                ⑩备忘录(Memento)模式;

                ⑩+①:模板方法(TemplateMethod)模式;

        总结:学好设计模式需要明白两点,第一七个原则,第二23种设计模式

相关推荐

  1. 设计-简介-模式༿

    2023-12-19 11:28:04       33 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-19 11:28:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-19 11:28:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-19 11:28:04       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-19 11:28:04       20 阅读

热门阅读

  1. 每日一题:Leetcode1314.矩阵区域和

    2023-12-19 11:28:04       39 阅读
  2. js 数据类型

    2023-12-19 11:28:04       39 阅读
  3. tensorflow定制模型和训练算法

    2023-12-19 11:28:04       31 阅读
  4. Cookie和会话安全

    2023-12-19 11:28:04       26 阅读
  5. leetCode算法—6. N 字形变换

    2023-12-19 11:28:04       45 阅读
  6. 智能合约为什么是企业数字化转型的新引擎。

    2023-12-19 11:28:04       38 阅读
  7. Linux 系统常用命令总结

    2023-12-19 11:28:04       32 阅读