设计模式
常见设计模式及应用场景
单例模式
全局作用范围内只会生成一个实例,常见应用场景:数据库连接池
作用:减少内存的使用
策略模式
比如JDK中生成ThreadPoolExecutor时就可以在构造方法中指定不同的策略生成线程池,
作用:当策略分支很多时,减少if else语句冗余,且有新策略添加时不用修改原来的代码。
作用:遵循开闭原则,提升代码的拓展性

3.观察者模式
当被观察者状态发生改变时,所有的观察者都会收到通知。
公众号发布订阅
spring mvc
4. 模板方法设计模式
controller service mapper
5.代理模式
jdk aop动态代理
6.迭代器模式
7.构造器模式
作用:有些时候有多个成员变量,有些初始化是可选的,有些是必选的,将成员变量的初始化与构造函数进行分离
比如创建SparkContext上下文环境时。