设计模式学习之路
2017-10-23 23:23
323 查看
一、设计模式是什么
一些大牛针对特定的场景、重复出现的问题经过验证总结出来的解决方案,不是什么问题都能够解决!所以说设计模式不能泛滥的使用。
二、目的
站在巨人的肩膀上,快速走向架构师之路
三、23个设计模式
思考:各种模式使用场景?
四、简单工厂方法
提供一个创建实例的功能,无需关心具体实现。实例类型可以是接口,抽象类,具体的类。简单工厂的核心:选择实现(数据来源用户传入,配置,系统运行)
接口:提高系统的扩展性,提供一种可插拔的功能;
面向接口编程:分层和模块划分。层与层之间的交互通过接口调用;内部的模块之间的交互也是通过接口调用。
五、单例模式
1.单例模式分为饿汉和懒汉两种模式
2.保证了一个类只有一个实例,并提供了一个访问它的全局访问点,如果不同步是非线程安全的。
【恶汉式】:恶汉式由于虚拟机只加载一次,所以是线程安全的
【懒汉式】:懒汉式实现还体现了缓存的思想,缓存是一种典型的空间换时间的方案。
双重加锁创建单例。
双重加锁避免不必要的排队和在多线程操作下的正确操作
场景:读取配置文件
一般来说配置文件运行期间不修改,读取一次就可以。
六:工厂方法模式
工厂方法的主要功能是让父类在不知道具体实现的情况下,完成自身的功能调用,而具体实现延迟到子类来实现。
工厂方法的实现中,通常父类会是一个抽象类,里面包含创建所需要对象的抽象方法,这些抽象方法就是工厂方法。
抽象类:即要约束子类的功能,又要为子类提供公共的功能。
父类也可以是一个具体的类!
七:观察者模式
定义对象间的一对多的以来关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
持续更新中。。。
一些大牛针对特定的场景、重复出现的问题经过验证总结出来的解决方案,不是什么问题都能够解决!所以说设计模式不能泛滥的使用。
二、目的
站在巨人的肩膀上,快速走向架构师之路
三、23个设计模式
思考:各种模式使用场景?
四、简单工厂方法
提供一个创建实例的功能,无需关心具体实现。实例类型可以是接口,抽象类,具体的类。简单工厂的核心:选择实现(数据来源用户传入,配置,系统运行)
接口:提高系统的扩展性,提供一种可插拔的功能;
面向接口编程:分层和模块划分。层与层之间的交互通过接口调用;内部的模块之间的交互也是通过接口调用。
五、单例模式
1.单例模式分为饿汉和懒汉两种模式
2.保证了一个类只有一个实例,并提供了一个访问它的全局访问点,如果不同步是非线程安全的。
【恶汉式】:恶汉式由于虚拟机只加载一次,所以是线程安全的
【懒汉式】:懒汉式实现还体现了缓存的思想,缓存是一种典型的空间换时间的方案。
双重加锁创建单例。
双重加锁避免不必要的排队和在多线程操作下的正确操作
场景:读取配置文件
一般来说配置文件运行期间不修改,读取一次就可以。
六:工厂方法模式
工厂方法的主要功能是让父类在不知道具体实现的情况下,完成自身的功能调用,而具体实现延迟到子类来实现。
工厂方法的实现中,通常父类会是一个抽象类,里面包含创建所需要对象的抽象方法,这些抽象方法就是工厂方法。
抽象类:即要约束子类的功能,又要为子类提供公共的功能。
父类也可以是一个具体的类!
七:观察者模式
定义对象间的一对多的以来关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。
持续更新中。。。
相关文章推荐
- 设计模式学习之路-状态模式
- 我的设计模式学习之路--简单工厂模式
- 设计模式学习之路——开篇
- 教为学:设计模式学习之路(一):设计模式的基本设计原则
- 设计模式学习之路 - 适配器模式 - 接口转换器
- 设计模式学习之路-策略模式
- 我的设计模式学习之路7(模板模式)
- 我的设计模式学习之路3(动态代理)
- java学习之路---设计模式---动态代理
- 设计模式学习之路——Observer 观察者模式
- 设计模式学习之路——Builder 生成器模式
- 设计模式学习之路-----策略模式
- java设计模式学习之路
- 设计模式学习之路-外观模式
- 设计模式学习之路-抽象工厂模式
- 设计模式学习之路(二) ——观察者模式
- 设计模式学习之路-适配器模式
- 设计模式学习之路——简单工厂模式
- java学习之路--设计模式--适配器模式
- java学习之路---设计模式----工厂代理模式的进一步研究