获取思维导图翻至底部底部,基本概览博客内容(暂未完全完善,期待你的持续关注)
写作不易,如果您觉得写的不错,欢迎给博主来一波点赞、收藏~让博主更有动力吧!
一.相关内容
- 在软件工程中,类图是一种静态的结构图,描述了系统的类的集合,类的属性和类之间的关系,可以简化了人们对系统的理解;
- 详细介绍点击:【设计模式】UML类图
- 在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据七条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。
- 详细介绍点击:【设计模式】七大设计原则
二.创建型模式(5种)
(1) 概述
-
关注点:“怎样创建对象?”
-
主要特点是:“将对象的创建与使用分离”
-
作用:可以降低系统的耦合度,使用者不需要关注对象的创建细节
-
创建型模式分为(点击跳转查看详细内容):
-
1.单例模式
-
2.工厂方法模式
-
3.抽象工厂模式
-
4.原型模式
-
5.建造者模式
-
(2) 模式对比
(2.1) 工厂方法模式VS建造者模式
工厂方法模式注重的是整体对象的创建方式;而建造者模式注重的是部件构建的过程,意在通过一步一步地精确构造创建出一个复杂的对象。
我们举个简单例子来说明两者的差异,如要制造一个超人,如果使用工厂方法模式,直接产生出来的就是一个力大无穷、能够飞翔、的超人;而如果使用建造者模式,则需要组装手、头、脚、躯干等部分,于是一个超人就诞生了。
(2.2) 抽象工厂模式VS建造者模式
抽象工厂模式实现对产品家族的创建,一个产品家族是这样的一系列产品:具有不同分类维度的产品组合,采用抽象工厂模式则是不需要关心构建过程,只关心什么产品由什么工厂生产即可。
建造者模式则是要求按照指定的蓝图建造产品,它的主要目的是通过组装零配件而产生一个新产品。
如果将抽象工厂模式看成汽车配件生产工厂,生产一个产品族的产品,那么建造者模式就是一个汽车组装工厂,通过对部件的组装可以返回一辆完整的汽车。
三.结构性模式(7种)
- 关注点:“如何将类或对象按某种布局组成更大的结构”。
- 分为类结构型模式和对象结构型模式
- 前者采用继承机制来组织接口和类
- 后者釆用组合或聚合来组合对象
- 由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。
结构型模式分为以下 7 种:
- 1.代理模式
- 2.适配器模式
- 3.装饰者模式
- 4.桥接模式
- 5.外观模式
- 6.组合模式
- 7.享元模式