快速记忆23种设计模式

一:创建型模式(5个):

1. 工厂模式(Factory Pattern)

您需要一辆汽车,可以直接从工厂里面提货,而不用去管这辆汽车是怎么做出来的,以及这个汽车里面的具体实现。

2. 抽象工厂模式(Abstract Factory Pattern)

奔驰汽车也分好多品种,比方说等级不同:奔驰C、奔驰E。还有产地不同:中国奔驰、德国奔驰。这里产地不同,其实可以理解成完全两个产品,比方说,中国奔驰C,和德国奔驰C系就不一样,比方说气囊数量以及位置,车体钢铁硬度什么的都不一样

3. 单例模式(Singleton Pattern)

一个班级只有一个班主任。

4. 构建器模式(Builder Pattern)

去肯德基,汉堡、可乐、薯条、炸鸡翅等是不变的,而其组合是经常变化的,生成出所谓的"套餐"。

5. 原型模式(Prototype Pattern)

创建重复的对象:细胞分裂。

二:结构型模式(7个):

1. 适配器模式(Adapter Pattern)

美国电器 110V,中国 220V,就要有一个适配器将 110V 转化为 220V。

2. 桥接模式(Bridge Pattern)

抽象部分与实现部分分离:开关:可以看到的开关是抽象的,但是开关可能是开灯,可能是开电视

3. 组合模式(Composite Pattern)

公司和部门

4. 装饰器模式(Decorator Pattern)

动态附加职能:孙悟空有 72 变,当他变成"庙宇"后,他的根本还是一只猴子,但是他又有了庙宇的功能。

5. 外观模式(Facade Pattern)

简化使用:去医院看病,可能要去挂号、门诊、划价、取药,让患者或患者家属觉得很复杂,如果有提供接待人员,只让接待人员来处理,就很方便。

6. 享元模式(Flyweight Pattern)

系统中有大量对象:汉字编码,活字印刷,只把常用字抽取出来

7. 代理模式(Proxy Pattern)

Windows 里面的快捷方式

行为型模式(11个)

1. 责任链模式(Chain of Responsibility Pattern)

击鼓传花、顺序处理,请假流程审批

2. 命令模式(Command Pattern)

对行为进行"日志记录、撤销/重做、事务回滚"等处理:Ctrl+Z撤销

3. 解释器模式(Interpreter Pattern)

编译器、运算表达式计算,用于解释语法,自定义需求。

4. 迭代器模式(Iterator Pattern)

遍历集合

5. 中介者模式(Mediator Pattern)

星型结构,买卖房产的中介。可以理解为ESB

6. 备忘录模式(Memento Pattern)

在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。 类比后悔药、打游戏时的存档。

7. 观察者模式(Observer Pattern)

拍卖的时候,拍卖师观察最高标价,然后通知给其他竞价者竞价。或者类比只能家居的联动,人进来了,灯就亮了。

8. 状态模式(State Pattern)

打篮球的时候运动员可以有正常状态、不正常状态和超常状态。状态转变,带来不同的能力

9. 策略模式(Strategy Pattern)

诸葛亮的锦囊妙计,每一个锦囊就是一个策略。

10. 模板模式(Template Pattern)

流水线处理,可以放液体进去,可以放固体进去,最后都能处理好。

11. 访问者模式(Visitor Pattern)

将数据结构与数据操作分离,比方说性别有男女,今天统计男女比例,明天统计男女年龄,后天统计男女身高,数据都是一份,但是有不同的操作。

设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式、适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式、策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式 ### 设计模式的三大类 **创建型模式(Creational Pattern):**对类的实例化过程进行了抽象,能够将软件模块中**对象的创建**和对象的使用分离。 (5种)工厂模式、抽象工厂模式、单例模式、建造者模式、原型模式 情景记忆:两个人在聊天。一个问:这家**工厂**是干什么的?另一个说:**造 圆型 丹**药的。5个。 **结构型模式(Structural Pattern)**:关注于对象的组成以及对象之间的依赖关系,描述如何将类或者对象结合在一起形成更大的结构,就像**搭积木**,可以通过简单积木的组合形成复杂的、功能更为强大的结构。 (7种)适配器模式、装饰者模式、代理模式、外观模式、桥接模式、组合模式、享元模式 情景记忆:想象自己正在一个,无论是**外观**还是内部**装饰**都很豪华的度假村,**享**受着7天的带薪年假,那里有小**桥**流水,有**组合**了东西方文化的美食,有会说各国语言的服务员(即**适配器**),还可以**代理**预订各国各航班机票。7个。 **行为型模式(Behavioral Pattern)**:关注于对象的行为问题,是对在不同的对象之间划分责任和算法的抽象化;不仅仅关注类和对象的结构,而且重点关注它们之间的**相互作用**。 (11种)策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式 情景记忆:一个**访客**来到一家房屋**中介**门口,正在**观察**宣传栏里的房屋信息,偶然间听到店长对一位新人说:“你向客人推荐房屋的**策略**用错了,你应该用**迭代**的方式介绍所有房源。客人走后,登记客人信息的**模板**也用错了。你的师傅没有向你**解释**清楚,他也有**责任**。我**命令**你用笔记记下我刚才说的话,起到**备忘**的目的”。店长走后,那位新人的**状态**很低落。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值