部分设计模式的理解说明!

设计模式有很多,但大部分可以说基本上掌握,就不单独写了,这里记下,如果有错到时候再回来补充;

这个博主的解释非常独到.........传送门

1.适配器模式:

IA是A系统的接口, IB是B系统的接口,...一般来说.AB两个系统干的活有相似,但对外只想提供A的接口出去,又不想把B修改为A那样.....那么就用到适配器了.....

adaptA是继承IA的.......一般adaptA里面用组合的方式保存一个IB类的对象...........也就是用IB的类方法去实现IA的所有接口....那么B就可以在在A系统下使用了.

以前的特效系统也做过这个类似,,因为后面重新写了一个特效系统,但也希望能使用以前的特效系统..这时候这个适配器模式就有用了.


2.工厂模式:

工厂模式以前用得很多.....就是把一些对象的生成和销毁都交给一个工厂类处理......想生成某个类的时候.一般传个参数到工厂类,里面怎么组装你不需要知道.你会得到你想要的对象指针的.......工厂一般应用单件模式......复杂点的..工厂也有接口类..然后下面继承不同生产功能的子类.工厂.........目的都差不多.......用生产汽车最好理解了...用户不需要知道宝马X5怎么生产组装,他的责任是给钱,...然后我们工厂就提供一辆出来..(我也想要)

3.facade门面模式:

我们做功能会用到很多不同的接口类,而且为了便于自己写功能.一般分得很细.而且定义很多..,自己用用也就算了.但要是提供给外面的用户使用,那么就悲剧了.用户会难以选择,

所以一般都会用组合再封装一层,...只提供必须的和少量的接口,让用户一看就知道.....这就是门面工程......@@


4.Template method模板模式:

一个基类或者接口类.......

class  fun{  public: void run() ;   protected: virtual A() = 0 ; virtual B() = 0 ; virtual c() = 0;};

然后run里面就写死执行  A();  B(); C();  这样的顺序运行........run要求不能被改写.........你可以修改ABC等接口..

大概就这样......这个很多用在最外层的框架用... 


5.builder建造者模式:

这个实际应用中真分不清楚和工厂模式有什么区别.............建造者对外提供一个director..然后传入不同的部件builder,去控制产品 ......

....工厂模式就是传参数控制生产的产品..但返回的都是同一个接口类.......

可以说是一个组合.一个继承的应用吧.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值