C#设计模式学习总结

1.简单工厂模式:直接通过参数创建对象,对创建过程进行统一,利于代码简洁,但如果要添加新对象需要修改创建过程,不符合开闭原则;适合比较简单、稳定的需求。

2.工厂方法模式:简单工厂模式的延伸,解决添加新对象问题,符合开闭原则,但仅能包含一级对象;

3.抽象工厂模式:比工厂方法模式抽象程度更高,一个工厂可以生产一组产品,每一个产品可以分属不同的产品族,方便扩展产品,但不方便扩展产品族;

4.建造者模式:适用于创建有较多共同点、组成部分相似的产品,并且产品的构建过程需要管控;隔离复杂对象的创建和使用,并使相同的创建过程可以创建不同的产品

5.原型模式:如对象创建较复杂或耗时可通过克隆方式创建,缺点是每个类都得写一个克隆方法;

6.单例模式:确保类只有一个实例,但C#存在自动垃圾回收机制,可能会被自动销毁并回收资源导致单例对象状态丢失;静态类也可实现类似功能,但单例可以继承接口并解耦(降低类间互相影响);

7.适配器模式:将现有不合适的接口转化为所希望的接口;

8.桥接模式:类有多个变化维度,则可每个变化维度设计一个接口并继承扩展,这样多维度解耦并降低类的个数;

9.组合模式:需要兼容对象间存在差异可建立上层抽象类继承后进行区别处理,以统一,可提高系统灵活性,同层扩展组合;

10.装饰模式:适合向下扩展组合,丰富对象的内在细节;

11.外观模式:整合一组接口至一个统一接口,使更加容易使用,类似建造者模式,但更倾向于过程;

12.享元模式:适用系统中存在大量相同或相似的对象,可用共享方法重复使用相同部分,不同部分状态外部化,实现节约内存、提高性能。

13.代理模式:在调用外部DLL时经常使用,实现一个居间类完成一些功能;虚拟代理可应对较长加载时间或十分耗费系统资源的应用;

14.职责链模式:将一个处理请求以链的形式传递;

15.命令模式:将命令封装为对象,请求发送者通过命令对象间接引用请求接收者,使系统具有更好的灵活性和可扩展性;

16.解释器模式:将简单的自定义语言转换为可执行代码的结构;

17.迭代器模式:为聚合对象提供遍历方式,解决遍历类应用;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sunny被注册

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值