oo 基礎
1 抽象
2 封裝
3 多型
4 繼承
oo原則
1 封裝變化
2 多用組合,少用繼承
3 針對介面程式設計,不針對實現程式設計
4 為互動物件之間的松耦合設計而努力
5 類應該對擴充套件開放,對修改關閉
6 依賴抽象,不要依賴具體類
7 只和朋友交談
8 別找我,我會找你
9 類應該只有乙個改變的理由
設計模式
1裝飾者——包裝乙個物件,以提供新的行為
2狀態——封裝了基於狀態的行為,並使用委託在行為之間切換
3迭代器——在物件的集合之中遊走,而不是暴露集合的實現4外觀——簡化一群類的介面
5策略——封裝可以互換的行為,並使用委託來決定要使用哪乙個
6**——包裝物件,以控制對此物件的訪問
7工廠方法——由子類決定要建立的具體類是哪乙個
8介面卡——封裝物件,並提供不同的介面
9觀察者——讓物件能夠在狀態改變時被通知
10模板方法——由子類決定如何實現乙個演算法中的步驟
11組合——客戶用一致的方法處理物件集合和單個物件
12單件——確保有且只有乙個物件被建立
13抽象工廠——允許客戶建立物件的家族,而無需指定他們的具體類
14命令——封裝請求成物件。
設計模式1
facade模式 當你需要使用乙個很複雜的系統,你作為乙個使用者,當然希望使用起來越簡單越好,最好是乙個概念上的功能只需要呼叫乙個函式介面。這時候向你提供系統的人就要考慮使用facade模式了。通過這種模式改進後,系統提供者把系統的對外使用的複雜度降低了,使用者就可以很簡單的使用系統了。舉例來說,在...
設計模式(1)
單例模式 保證為乙個類只生成唯一的例項物件。也就是說在整個程式空間中該類只存在乙個例項物件。include using namespace std class usermanager public static usermanager getinstance private static userm...
設計模式1
讀後感 陸續花了三周時間,閱讀了 大話設計模式 的電子書版本。在此之前也閱讀過其它講解設計模式的書,但是往往過於抽象,舉例複雜,讀起來很是吃力,都堅持不下來 閱讀這本書比較輕鬆。本書的優點 就是淺顯易懂,適合於入門者 本書的缺點 就是有些地方講解並不深入全面 並沒有給出用.net實現時,如何實現更優...