架构师训练营第三周学习总结
常用设计模式:
简单工厂模式
客户端通过接口编程,通过工厂类或工厂方法动态获得实例
简单工厂模式是很多其他模式的基础
单例模式
单例模式保证产生单一实例,以达到减少实例频繁创建和销毁带来的资源消耗,以及便于在多个用户使用该实例时进行统一控制
该模式实现分懒汉模式和饿汉模式两种,懒汉模式预先创建实例,饿汉模式在请求实例时判断实例不存在时创建实例。饿汉模式在多线程环境存在线程安全问题,需在创建或者获取实例时加锁,因此性能上略低于饿汉模式。
单例模式创建的实例应为无状态实例,否则由于多用户使用单一实例,可能发生状态意外改变而造成无法预料的后果
适配器模式
通过继承上层接口,扩展已有类的功能
模板方法模式
通过继承的方法来实现扩展,基类负责算法的轮廓与骨架,子类负责算法的具体实现
策略模式
在系统需要从多种算法中选择一种时应用,基类声明算法接口,子类实现具体算法
可与简单工厂模式结合,通过工厂类或工厂方法创建实例
组合模式
以组合的方式,将基类作为成员变量,实现结构树,对需求或算法进行拆分,最终通过递归的方式执行所有节点的代码
装饰器模式
在不改变对客户端接口的前提下,扩展现有对象的功能
装饰器和被装饰类实现同样的接口,在装饰器内部对被装饰类的调用进行包装
装饰器模式可形成包装器链
依赖注入控制反转模式
IoC服务将被依赖对象实例化并注入给客户
IoC服务可以通过简单工厂模式实现
版权声明: 本文为 InfoQ 作者【文智】的原创文章。
原文链接:【http://xie.infoq.cn/article/08e027aca5e1eb4401599b9a4】。未经作者许可,禁止转载。
评论