设计模式
设计模式概述
什么是设计模式
设计模式是前辈们对代码开发经验的总结,是解决特定问题的一些列套路,它不是语法规定,而是一套用来提高代码可复用性,可维护性,可读性,稳健性,以及安全性的解决方案
学习设计模式的意义
设计模式本质是面向对象设计原则的实际应用,是对类的封装性,继承性和多态性以及类的关联关系和组合关系的充分理解
设计模式的基本要素
- 模式名称
- 问题
- 解决方案
- 效果
GoF23根据作用划分
-
创建型模式:
单例模式,工厂模式,抽象工厂模式,建造者模式,原型模式
-
结构型模式:
适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式
-
行为型模式
模板方法模式,命令模式,观察者模式,中介者模式,备忘录模式,解释器模式,状态模式,策略模式,职责链模式,访问者模式
OOP七大原则
- 开闭原则:对扩展开放,对修改关闭
- 里氏替换原则:继承必须确保超类中拥有的性质在子类中仍然成立
- 依赖倒置原则:要面向接口编程,不要面向实现编程
- 单一职责原则:控制类的粒度大小,将对象解耦,提高其内聚性(一个对象尽可能干好一件事情)
- 接口隔离原则:要为各个类建立它们需要的专用接口
- 迪米特法则:只与你的直接朋友交谈,不跟陌生人说话
- 合成复用原则:尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现