您的位置:首页 > 其它

设计模式学习之路

2017-10-23 23:23 323 查看
一、设计模式是什么

一些大牛针对特定的场景、重复出现的问题经过验证总结出来的解决方案,不是什么问题都能够解决!所以说设计模式不能泛滥的使用。

二、目的

站在巨人的肩膀上,快速走向架构师之路

三、23个设计模式

思考:各种模式使用场景?

四、简单工厂方法

提供一个创建实例的功能,无需关心具体实现。实例类型可以是接口,抽象类,具体的类。简单工厂的核心:选择实现(数据来源用户传入,配置,系统运行)

接口:提高系统的扩展性,提供一种可插拔的功能;

面向接口编程:分层和模块划分。层与层之间的交互通过接口调用;内部的模块之间的交互也是通过接口调用。

五、单例模式

1.单例模式分为饿汉和懒汉两种模式

2.保证了一个类只有一个实例,并提供了一个访问它的全局访问点,如果不同步是非线程安全的。

【恶汉式】:恶汉式由于虚拟机只加载一次,所以是线程安全的



【懒汉式】:懒汉式实现还体现了缓存的思想,缓存是一种典型的空间换时间的方案。



双重加锁创建单例。



双重加锁避免不必要的排队和在多线程操作下的正确操作

场景:读取配置文件

一般来说配置文件运行期间不修改,读取一次就可以。

六:工厂方法模式

工厂方法的主要功能是让父类在不知道具体实现的情况下,完成自身的功能调用,而具体实现延迟到子类来实现。

工厂方法的实现中,通常父类会是一个抽象类,里面包含创建所需要对象的抽象方法,这些抽象方法就是工厂方法。

抽象类:即要约束子类的功能,又要为子类提供公共的功能。

父类也可以是一个具体的类!

七:观察者模式

定义对象间的一对多的以来关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。

持续更新中。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: