前言:看這本書的時候我還是個小白,第二次看的時候已經要面臨找新工作了,第三次看的時候已經換了心境。用了三次 跨越三年的時間才看完這本書,真該早點看完。 每章小結: 1:簡單工廠:計算器 加法、減法、乘法、除法 2:策略模式:商場促銷方案 3:單一職責:手機與相機 4:開發-封閉原則 ...
當代碼寫多了,總有些是經驗,但經驗是什么呢 if else用的次數比別人多 顯然不是。有些超棒的設計可以謂之經驗 功能權限 網絡上流行的經典的權限設計是 主體 領域 權限 who what how問題原型 的設計思想,其中: 主體 可以是用戶,可以是角色,也可以是一個部門 領域 可以是一個模塊,可以是一個頁面,也可以是頁面上的按鈕 權限 可以是 可見 ,可以是 只讀 ,也可以是 可用 如按鈕可以點 ...
2019-11-27 07:42 27 6469 推薦指數:
前言:看這本書的時候我還是個小白,第二次看的時候已經要面臨找新工作了,第三次看的時候已經換了心境。用了三次 跨越三年的時間才看完這本書,真該早點看完。 每章小結: 1:簡單工廠:計算器 加法、減法、乘法、除法 2:策略模式:商場促銷方案 3:單一職責:手機與相機 4:開發-封閉原則 ...
抽象工廠模式(Abstract Factory Pattern):提供一個創建一系列相關或相互依賴對象的接口,而無需指定它們的類 下面是一個抽象工廠的demo: 上面類的設計如下圖: 優點: 具體工廠類如MysqlFactory在一個應用中只需要初始化一次 ...
建造者模式(Builder Pattern):將一個復雜對象的構建與它的表示分離,使得同樣的構建過程可以創建不同的表示 下面是一個建造者模式的demo 上面類的設計如下圖: 指揮者Director 調用建造者Builder的對象 具體的建造過程是在Builder的子類 ...
狀態模式(State Pattern):當一個對象的內在狀態改變時允許改變其行為,這個對象看起來像是改變了其類 下面是一個狀態模式的demo: 上面類的設計如下圖: 應用場景:當控制一個對象的狀態轉換的條件表達式過於復雜時,把狀態的判斷邏輯轉移到表示不同狀態 ...
策略模式(Strategy Pattern):它定義了算法家族,分別封裝起來,讓他們之間可以相互替換,此模式讓算法的變化,不會影響到使用算法的客戶. 下面是一個商場活動的實現 這幾個類的設計如下圖: 使用一個策略類CashSuper定義需要的算法的公共接口 ...
代理模式(Proxy Pattern):為其他對象提供一種代理以控制對這個對象的訪問 上面的類的設計如下圖: 代理類Proxy引用代理的實體Pursite,提供與Pursite相同的接口來代替實體 作者:Andy 出處:http ...
組合模式(Composite Pattern):將對象組合成成樹形結構以表示“部分-整體”的層次結構,組合模式使得用戶對單個對象和組合對象的使用具有一致性. 下面是一個組合模式的demo: 上面類的設計如下圖: 應用場景: 在需要體現部分與整體層次的結構時 希望用戶忽略 ...
工廠方法模式(Factory Method Pattern):定義一個用於創建對象的接口,讓子類決定實例化哪一個類,工廠方法使一個類的實例化延時到其子類. 上面類的設計如下圖: 創建一個抽象工廠類CreateLeiFeng和一個抽象對象類LeiFeng,當創建具體 ...