架构师训练营第 3 周学习总结
3.1 设计模式:使用设计模式优化排序工具包的设计
简单工厂模式
创建模式 (Creational Pattern)
简单工厂并不简单,如果仅仅是用简单工厂最初的模式进行开发,简单工厂自己并不符合开闭原则。可以通过配置文件的方式,使简单工厂自己实现满足开闭原则。
3.2 设计模式:Singleton单例模式
Singleton 单例模式
Singleton 模式保证产生单一实例,就是说一个类只产生一个实例。
性能需求
功能需求
饿汉式和懒汉式
尽量使用饿汉式
适配器模式 (Adapter)
把已经存在的某些类,已经定义好的方法,适配成策略模式中已经定义好的接口。已经存在的类通常称作被适配类,实现接口并完成方法调用的称作适配类。
类的适配器和对象的适配器
组合优于继承,所以尽量使用组合方式,所以尽量使用对象适配器这种方式。
3.3 JUnit中的设计模式(上)
模板方法模式 (Template Method)
它是一种“类的行为模式”
它通过“继承”的方式来实现扩展
模板方法的形式
抽象方法
具体方法
钩子方法
策略模式 (Strategy)
它是一种“对象的行为模式”
应用程序针对策略接口实现编程,而具体的实现类实现接口。
它通过“组合”的方法来实现扩展
3.4 JUnit中的设计模式(下)
组合模式 (Composite)
它是一种“对象的结构模式”
JUnit的TestSuite
GUI(树状结构)的绘制
装饰器模式 (Decorator)
它是一种“对象的结构模式”
在不改变对客户端的接口的前提下,扩展现有对象的功能
3.5 Spring中的设计模式
依赖注入DI和控制反转IoC
被注入对象
被依赖对象
Spring中的单例模式
依靠HashMap
Spring的MVC模式
3.6 Intel 大数据SQL引擎&Panthera设计模式
Intel大数据SQL引擎
Transformer
装饰器模式
模板方法模式
Generator
模板方法模式
便于团队协作
评论