面对对象设计五大原则:
1. 开放封闭原则:在不修改代码原则或者最小改动代码原则基础上对代码进行扩展
2.里氏替换原则:子类可以扩展父类的功能,但是不可改变父类的功能
3.依赖倒置原则:针对接口编程,不要针对实现编程。
4.接口隔离原则:接口尽量多,且相互独立,
5.单一职责原则:一个类只负责一项职责
设计模式分类:
1.创建新模式:工厂方法模式,抽象工厂模式,创建者模式,原型模式,单例模式
2.结构型模式:适配器模式,桥模式,组合模式,装饰模式,外观模式,享元模式
3.行为型模式:解释器模式,责任链模式,命令模式,迭代器模式,中介者模式,备忘录模式,观察者模式,状态模式,策略模式,访问者模式,模板方法模式