23种设计模式

1、工厂方法:用抽象工厂来创建对象。
2、抽象工厂:用抽象工厂创建一堆紧密相关的对象。
3、原型模式:给类定义一个Clone函数,创建一个对象,调整好对象状态、传递到其他地方,用这个对象来克隆新的对象。
4、构建器模式:如果一个类的构建流程不变,但是每一个构建小步骤多变,可以把构建小步骤定义成抽象函数给子类实现。


5、界面模式:给系统提供一个对外接口。
6、代理模式:因为开销大、安全问题、不太好访问等原因,用一个类的对象间接访问某个对象。
7、适配器模式:用来对接不同接口。
8、中介者模式:有两个系统相互依赖,可以定义第三方类,让这两个系统都和第三方类相互依赖。


9、组合模式:用树形结构组合代码。
10、迭代器模式:用对象封装对容器的访问方法。
11、责任连模式:将多个对象串成一个链,沿着链传递请求,直到有一个对象处理这个请求为止。


12、命令模式:把请求封装成对象,从而可以对请求进行排队、记录、撤销等操作。
13、访问器模式:当修改基类代价太大时,可以给基类定义一个Visitor虚方法和一个Visitor接口,通过扩展Visitor接口来间接扩展基类的功能。


14、模板模式:类似Cocos2dx程序框架,人家都把框架写好了,你只要重写他的虚函数就行了。
15、策略模式:从外部传进来一个接口,用这个接口来作为某个成员函数的内部实现。
16、观察者模式:当对象状态变化时可以通过接口通知外部,外部先向对象注册这个接口。


17、装饰模式:继承一个基类,然后再包含基类的其他子类,从而实现新的功能。
18、桥模式:将类内一部分联系紧密的接口抽象出来定义成新的类作为原来类的成员。


19、单件模式:整个应用程序中只能创建一个实例,用原子操作+互斥体+二次判断来实现线程安全。
20、状态模式:状态接口+状态管理器。
21、享元模式:就是对象池模式。
22、备忘录模式:对象的序列化和反序列化。
23、解释器模式:分析字符串时,可以根据字符串中的字符的含义定义对应的解析式对象,然后构建语法树。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值