设计模式(design pattern)
设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。 是对面向对象设计中反复出现的问题的解决方案
使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。
Java设计模式贯彻的原理是:面向接口编程,而不是面向实现。其目标的原则是:降低耦合,增强灵活性。
设计模式分类:
一、创建型模式
创建型模式是用来创建对象的模式,抽象了实例化的过程,帮助一个系统独立于其关联对象的创建、组合和表示方式。
所有的创建型模式都有两个主要功能:
将系统所使用的具体类信息封装起来;
隐藏类的实例是如何被创建和组织的。外界对于这些对象只知道他们共同的接口,而不清楚其具体的实现细节。
常见的创建型模式:
单例模式(Singleton Pattern)
工厂方法模式(Factory Pattern)
抽象工厂模式(Abstract Factory Pattern)
建造者模式(Builder Pattern)
原型模式(Prototype pattern)
二 、结构型模式
结构型模式讨论的是类和对象的结构,它采用继承机制来组合接口或实现(类结构型模式),或者通过组合一些对象实现新的功能(对象结构型模式)。
常见结构型模式:
代理模式(Proxy)
装饰模式(Decorator)
适配器模式(Adapter)
组合模式(Composite)
桥梁模式(Bridge)
外观模式(Facade)
享元模式(Flyweight)
三、行为型模式
行为型模式关注的是对象的行为,用来解决对象之间的联系问题。
常见行为型模式:
模板方法模式(Template Method)
命令模式(Commend)
责任链模式(Chain of Responsibility)
策略模式(Strategy)
迭代器模式(Iterator)
中介者模式(Mediator)
观察者模式(Observer)
备忘录模式(Memento)
访问者模式(Visitor)
状态模式(State)
解释器模式(Interpreter)