【設計模式】策略模式——支付案例
【設計模式】模板模式——jdbc案例
【設計模式】委派模式——登入案例
假如專案剛剛開發,只有乙個賬號密碼登入
**如下(示例):傳入賬號密碼,判斷是否正確,之後設定各種日誌資訊,設定session等等。
public
class
loginservice
}
假如有一天,產品大大要加入簡訊登入,簡訊登入只有手機號和驗證碼。
**如下(示例):建立smsloginservice
public
class
smsloginservice
extends
loginservice
}
簡訊登入service繼承loginservice,重寫login方法,然後轉換成賬號密碼登入需要的引數資訊進行登入。
**如下(賬號密碼登入):
public
class
wechatloginservice
extends
loginservice
}
public
class
userinfo
這種寫法,確實簡化了部分**,但是總感覺有一點點的牽強,因為實際情況中,經常會多個設計模式一起使用。
比如登入的時候可以分為 驗證使用者資訊,生成使用者憑證,記錄日誌,3個步驟。這個時候就可以引入模板模式來固定流程的執行順序。
或者說在進行選擇某一種登入的時候,會不會出現多個if/else的判斷呢?那麼可不可以引入策略模式呢?
設計模式是根據場景來靈活的運用,杜絕為了使用設計模式而是用設計模式。要學會後發制人,化有行為無形,無論怎麼寫,**最終講究的是優雅、靈活。
介面卡模式案例
題目 現有系統中有目標類americanplayer,其中包含protected的屬性球員姓名name和滿足使用者需求的介面attack和defense 在現有系統中americanplayer細化為forward center guard三類,都具體實現了介面attack和defense。現引入第...
設計模式 介面卡模式 類介面卡 物件介面卡
乙個小例子,便於理解,上 這是我們造的。現在想用這個方法。public class adaptee 類介面卡。對我們想要的方法封裝一下,target就能像之前一樣,呼叫request方法即可。public class adapter1 extends adaptee implements targe...
設計模式之介面卡模式(類介面卡模式)
介面卡模式,即定義乙個包裝類,用於包裝不相容介面的物件 包裝類 介面卡adapter 被包裝物件 適配者adaptee 被適配的類 把乙個類的介面變換成客戶端所期待的另一種介面,從而使原本介面不匹配而無法一起工作的兩個類能夠在一起工作。介面卡模式的形式分為 類的介面卡模式和物件的介面卡模式 模式原理...