設(shè)計模式
常見設(shè)計模式及應(yīng)用場景
單例模式
全局作用范圍內(nèi)只會生成一個實(shí)例,常見應(yīng)用場景:數(shù)據(jù)庫連接池
作用:減少內(nèi)存的使用
策略模式
比如JDK中生成ThreadPoolExecutor時就可以在構(gòu)造方法中指定不同的策略生成線程池,
作用:當(dāng)策略分支很多時,減少if else語句冗余,且有新策略添加時不用修改原來的代碼。
作用:遵循開閉原則,提升代碼的拓展性

3.觀察者模式
當(dāng)被觀察者狀態(tài)發(fā)生改變時,所有的觀察者都會收到通知。
公眾號發(fā)布訂閱
spring mvc
4. 模板方法設(shè)計模式
controller service mapper
5.代理模式
jdk?aop動態(tài)代理
6.迭代器模式
7.構(gòu)造器模式
作用:有些時候有多個成員變量,有些初始化是可選的,有些是必選的,將成員變量的初始化與構(gòu)造函數(shù)進(jìn)行分離
比如創(chuàng)建SparkContext上下文環(huán)境時。
標(biāo)簽: