引用:謙虛的天下
oop = 物件導向特性 + 原則 + 模式
物件導向的三大特性:封裝、繼承、多型。
設計:兩大基本原則和五大設計原則
物件導向設計的2個基本原則:
1.針對介面程式設計,而不是針對實現程式設計。
2.優先使用物件組合,而不是類繼承。
物件導向設計的5個設計原則:
1.單一職責原則(srp)
2.開放封閉原則(ocp)
3.liskov替換原則(lsp)
4.依賴倒置原則(dip)
5.介面隔離原則(isp)
模式:gof 23個設計模式+n
根據模式的目的可分為3類:
1.建立型模式:與物件的建立有關。
2.結構性模式:處理類與物件的組合。
3.行為性模式:對類或物件怎樣互動和怎樣 分配職責進行描述。
設計模式解決的問題:
下面列舉幾個常見的問題導致重新設計,可能需要設計模式來分析解決:
1.通過顯示的指定乙個類來建立物件
2.對特殊操作的依賴
3.對硬體和軟體平台的依賴
4.對物件表示或實現的依賴
5.演算法依賴
6.緊耦合
7.通過生產子類來擴充套件功能
8.不能方便的對類進行修改
軟體的設計臭味:
1.僵化性
2.脆弱性
3.頑固性
4.粘滯性
5.不必要的複雜性
6.不必要的重複
7.晦澀性
設計模式以目的分類:建立型模式、結構型模式、行為型模式。
*建立型模式:
1、工廠方法模式
2、抽象工廠模式
3、建立者模式
4、原型模式
5、單例模式
*結構型模式:
6、介面卡模式
7、橋模式
8、組合模式
9、裝飾模式
10、外觀模式
11、享元模式
12、**模式
*行為型模式
13、直譯器模式
14、模板方法模式
15、職責鏈模式
16、命令模式
17、迭代器模式
18、中介者模式
19、備忘錄模式
20、觀察者模式
21、狀態模式
22、策略模式
23、訪問者模式
除此之外,後來人發現很多新的模式,如空模式等。
總結:期望在之後的學習工作中能充分利用好設計模式。
設計模式開篇
1 什麼是設計模式?設計模式是一套被反覆使用 多人知曉 分類編目 設計經驗的總結。使用設計模式是為了可重用 保證 的可靠性,使 編制真正的工程化,能夠適應需求的變化。實現 功能的復用 1 繼承機制 uml中體現為泛化 2 組合 聚合 也可以是導航 3 多型,父類型別可以執行任何子類物件 4 類是對物...
設計模式開篇
a 物件導向的五大基本原則 object oriented design 1.單一職責原則 single responsibility principle 每乙個類應該只專注於做一件事。乙個類應該僅有乙個引起它變化的原因 最簡單,最容易理解卻最不容易做到的乙個設計原則 職員類例子 比如在職員類裡,將...
設計模式 開篇
什麼是設計模式?一說起設計模式,可能很多人都覺得很高大上的感覺,事實上,設計模式只是針對某一類問題的最佳解決方案而已,設計模式是由許多優秀的軟體系統中總結出來的可成功復用的設計方案。我們常說的23種設計模式來自 設計模式 一書,也就是我們常說的gof。模式分類 1.建立型模式 建立型模式涉及物件的例...