原文:用工廠模式和策略模式優化過多的if-else

多個if else代碼: 上面只統計了 個學習時間,如果我們要寫其他的學習時間就需要繼續添加if else,如果業務很復雜,那么這個代碼看起來會很亂,不方便維護 下面用策略模式和工廠模式優化該if else .定義抽象策略角色 接口 .編寫具體策略角色 實現策略角色接口 小學畢業策略角色: 這里的InitializingBean接口 具體看Spring Bean的生命周期 只有一個方法afterP ...

2019-02-14 17:40 0 1662 推薦指數:

查看詳情

用工廠模式+策略模式去掉if-else

需求: 假設有這么一個需求: 一個電商系統,當用戶消費滿1000 金額,可以根據用戶VIP等級,享受打折優惠。根據用戶VIP等級,計算出用戶最終的費用。 普通會員 不打折 白銀會員 優惠50元 黃金會員 8折 白金會員 優惠50元,再打7折 工廠+策略 ...

Fri Jan 17 18:17:00 CST 2020 0 2041
代碼重構:用工廠+策略模式優化過多的if else代碼塊

最近在工作中優化了一段冗余的if else代碼塊,感覺對設計模式的理解和運用很有幫助,所以分享出來。鑒於原代碼會涉及到公司的隱私,因此就不貼出來了。下面以更加通俗易懂的案例來解析。 假如寫一個針對員工上班不遵守制度做相應懲罰的程序,比如,上班遲到:罰100;上班睡覺:罰1000;上班早退:警告 ...

Sat Nov 11 00:32:00 CST 2017 14 6438
代碼重構:用工廠+策略模式優化過多的if else代碼塊

http://www.cnblogs.com/pfblog/p/7815238.html 最近在工作中優化了一段冗余的if else代碼塊,感覺對設計模式的理解和運用很有幫助,所以分享出來。鑒於原代碼會涉及到公司的隱私,因此就不貼出來了。下面以更加通俗易懂的案例來解析。 假如寫一個針對 ...

Fri Nov 17 19:12:00 CST 2017 1 7692
策略模式解決if-else過多

將判斷及處理定義為一個策略對象,key為判斷條件,值為函數,可帶參。 ...

Mon Aug 03 16:27:00 CST 2020 0 534
Springboot使用策略模式+工廠模式代替大量if-else

一.實戰需求:redis-key過期監聽 二.問題:大量key會造成監聽代碼臃腫 三.解決方案:使用策略模式+工廠模式代替if-else 代碼: 第一部分:redis-springboot配置 第二部分:監聽處理器 第三部分:策略接口 ...

Wed Sep 08 02:39:00 CST 2021 0 204
利用策略模式優化過多 if else 代碼

前言 不出意外,這應該是年前最后一次分享,本次來一點實際開發中會用到的小技巧。 比如平時大家是否都會寫類似這樣的代碼: 條件少還好,一旦 else if 過多這里的邏輯將會比較混亂,並很容易出錯。 比如這樣: 摘自 cim 中的一個客戶端命令的判斷條件。 剛開始條件 ...

Thu Jan 31 01:33:00 CST 2019 2 3249
利用策略模式優化過多 if else 代碼

前言 利用利用策略模式實際開發中 if else 條件判斷過多的問題 比如平時大家是否都會寫類似這樣的代碼: 條件少還好,一旦 else if 過多這里的邏輯將會比較混亂,並很容易出錯。 比如這樣: 摘自 cim 中的一個客戶端命令的判斷條件。 剛開始條件較少,也就 ...

Wed Mar 27 07:19:00 CST 2019 0 5826
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM