需求 :分銷系統的帳戶目前有交易帳戶和升級帳戶,須要增長一個邀請帳戶,以前的代碼比較冗餘,既經過if else進行斷定,須要修改源代碼。git
源代碼路徑:com.stylefeng.guns.modular.dist.service.impl.DisMemberAmountServiceImpl#addMoney 設計模式
源碼:設計
因爲代碼不可以很好的擴展,考慮使用到設計模式。3d
最後肯定用策略模式,即根據經過上下文的方式選擇不一樣的帳戶進行操做blog
結構以下:源碼
策略上下文:it
方法中實現調用:io
這樣就能夠實現經過上下文控制帳戶的擴展了。擴展
項目開源地址:coding
https://gitee.com/codingdb/distribution_management