Java設計模式入坑介紹(拋磚引玉篇)
實際項目中的
單一職責原則
下圖不符合單一指責原則。
下圖是方案2,分析在圖中
方案三
方案三的分析
單一指責原則注意事項和細節
一項職責並不代表是一個方法。比如打掃家務,不代表就是掃地,還有拖地。
接口隔離原則
改進:
主函數
依賴倒轉原則
分析方案一
方案二
這樣添加微信的方法就非常的方便
OpenAndClose是構造器
changhong的類三種方式都有的
里氏替換
改寫
依賴
聚合
組合
還想用減法的話
開閉原則ocp
對擴展開放(對提供方),對修改關閉(對使用方)
方法1需要改的太多了,所以要用ocp原則進行改進
把使用方中的代碼都刪除,只用s .draw()就可以了
迪米特法則(最少知道原則)
詳細講解p19,17分鐘左右
https://www.bilibili.com/video/av57936239?p=19