什么设计模式?
设计模式是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码的可复用性,可维护性,可读性,稳健性以及安全性的解决方案。
设计模式本质?
面向对象设计原则的实际运用,是对类的封装性,继承性和多态性以及类的关联关系和组合关系的充分理解。
为什么要学习设计模式? 学习设计模式有什么好处呢?:
- 提高程序员的思维能力,编程能力和设计能力
- 使程序更加标准化,代码编制更加工程化,使软件开发效率大大提高,缩短开发周期
- 使设计的代码可用性高,可读性强,可靠性高,灵活性好,可维护性强。
有哪些设计模式呢?
设计模式有23种:
创建型模式: 对象的创建和使用分离
- 单例模式,工厂模式,抽象工厂模式,建造者模式,原型模式
结构模式:描述将类或者对象,进行组合成更大的对象或者类
- 适配器模式,桥接模式,装饰模式,组合模式,外观模式,亨元模式,代理模式
行为型模式:描述类和对象相互协作,完成一个类不能完成的
- 模板方法模式,命令模式,迭代器模式,观察者模式,中介者模式,备忘录模式,解释器模式,状态模式,策略模式,职责链模式,访问者模式
oop七大原则
开闭原则:对扩展开放,对修改关闭
里氏替换原则:继承必须确保超类所拥有的性质在子类中依旧成立,继承时不更改父类的东西
依赖倒置原则:面向接口编程,不要面向实现编程 ,抽象不依赖细节,细节依赖抽象
单一指责原则:控制类的粒度大小,将对象解耦,提高其内聚性, 一个方法干一件事情
接口隔离原则:要为各个类建立他们需要的接口
迪米特法则:只与你的直接朋友接触,不要和“陌生人”说话
合成复用原则: 尽量先使用组合或者聚合等关联关系来实现, 其次考虑使用继承关系来实现 ,a是b成员变量 has 狗是动物(满足里氏替换)