1 | 工厂模式 | 例如产品确定工厂,如服务端和客户端通讯,通过包确定包数据格式,同时生成新的包 |
2 | 策略模式 | 例如数据同步的策略:增量上传和全部上传,两种策略,并可以切换 |
3 | 适配器模式 | 例如新接口变量是string,老接口是int,做中间适配,新接口-》【string-》int-》】老接口 |
4 | 单例模式 | 例如全局只有一个实体类,程序退出释放 |
5 | 原型模式 | 例如多线程QSqlDataBase::clone()一个类,不需要关心一个类的连接参数,只是做一个clone |
6 | 模板模式 | 例如QList |
7 | 外观模式 | 例如QDialogInput,提供UI操作 |
8 | 组合模式 | 例如上级-》下级-》下级-》下级,是一个map,但是允许各自有不同 |
9 | 代理模式 | 例如很多情况,window下条用SDK获取参数,而不用和硬件打交道 |
10 | 享元模式 | 例如QGraphicsItem和QGrapichsItemRect,在scene里,item可以完成大部分操作 |
11 | 桥接模式 | 类爆炸的情况类的从属关系,100x100当增加二级节点时,会同时增加100个类,方式就是 改成二维模式,100个A,100个B,实际操作可以 for(int k = 0; k < 100; k ++) for(int m = 0; m < 100; m++) |
12 | 装饰模式 | 可以说是加工模式,服务器A-》B-》C-》D,需要依次加A的税收,B的税收,C的税收,到D消费者时,需要向上交税 |
13 | 建造者模式 | 例如建房子,提供木材-》木房子;提供石材-》石房子 |
14 | 备忘录模式 | 和【建造者模式】和像,应刷机和印刷模板,模板可备份,复制,保存 |
15 | 中介者模式 | 和【备忘录模式】和像,类似电脑的cpu,小霸王的卡带 |
16 | 责任链模式 | 你可以做 = A?1:(B?1:(C?1:0)),一个类即:C?1:func() |
17 | 观察者模式 | 类似任务管理器,我可以看到所有的状态,同时也可以中断和干扰 |