写在前:设计模式主要做的事情就是解耦!
创建型模式
创建型模式:创建对象的模式,抽象了实例化的过程。它帮助一个系统独立于如何创建、组合和表示它的那些对象。关注的是对象的创建,创建型模式将创建对象的过程进行了抽象,也可以理解为将创建对象的过程进行了封装,即【如何高效地创建对象、封装复杂的创建过程】就是创建型模式要探讨的问题。
作为客户程序仅仅需要去使用对象,而不关注创建对象过程中的逻辑(耗费系统资源),所以单独对对象的创建进行研究对象的创建和对象的使用分开也就成为了必然趋势。因此,创建型模式主要执行方式就是将【创建代码】和【使用代码】解耦。
创建型模式分类:
- 工厂模式(Factory):工厂方法(Factory Method)和抽象工厂(Abstract Factory)
- 单例模式(Singleton)
- 创建者模式(Builder)
- 原型模式(Prototype)
结构型模式
结构型模式是为解决【怎样组装现有的类或对象,设计它们的交互方式,从而达到实现一定的功能目的】。结构型模式包容了对很多问题的解决。例如:扩展性(外观、组成、代理、装饰)、封装(适配器、桥接)。