设计模式是什么?
设计模式不是被创造出来的,是前辈编写代码的经验的总结,是一种编码模式,追求代码的可维护性,设计模式本质作用是代码复用,目的是建立对象之间的关联,提供了一系列代码解耦的解决方案。后由GOF整理成《Design Patterns: Elements of Reusable Object-Oriented Software》一书。GOF(Gang of Four) 是 4位作者的合称,一般叫他们 4人帮 ;
为什么要使用设计模式?
随着项目越来越大,人员流动等原因,导致代码越来越臃肿,难以维护,常常改一个功能需要改很多地方,而且还不确定有没有遗漏,尤其是这时再来改需求,就更难受了。
为了应对需求的频繁改动,更简单的维护,更高的代码质量。就需要掌握设计模式。
设计模式具体有哪些模式?
GOF把设计模式分为3类:
- 创建型
- 结构型
- 行为型
每一类又细分出具体的设计模式共23种:
- 创建型:单例模式,工厂模式,建造者模式,抽象工厂模式,原型模式
- 结构型:适配器模式,桥接模式,装饰模式,组合模式,外观模式,享元模式,代理模式
- 行为型:模板方法模式,命令模式,迭代器模式,观察者模式,中介者模式,备忘录模式,解释器模式,状态模式,策略模式,职责链模式,访问者模式
设计模式的原则:
- 按接口编程而不是按实现编程
- 优先使用组合而不是继承