1 從程式導向到物件導向
程式導向認為我們的世界是由一個個相互關聯的小系統組成。邏輯嚴密、環環相扣、井然有序。但是我們這個世界從來不是一成不變的。世界的複雜性和頻繁變革不是程式導向可以輕易應付應付的。
程式導向的困難本質上是因為過程的方法將世界看做是過程化的,一個一個緊密聯絡的小系統,構成這個系統的各個部分有著密不可分的聯絡。
物件導向方法是將世界看做一個一個獨立的物件,他們相互之間並無聯絡。只有當外部力量的驅動下,才會傳遞資訊。這些互動構成了這些物件之間的“過程”。
打個比方:如果一次成型一輛汽車就太過困然,我們可以把汽車分解為去多不同的零件,每個零件只和有限的零件產生聯絡,然後用特定的方式把它們組合起來。
在這個過程中,我們最重要的是對零件的抽象和對介面的描述。在物件導向的方法中這個也是最重要的。
抽象層次:一輛汽車可以抽象為發動機+輪子+車身。 發動機由可以抽象為汽缸+活塞等零件。
物件導向的方法根本的不同就是不再把世界看做一個緊密聯絡的系統,而是看做一些相互獨立的離散的小零件。這些零件依照某種特定的規則組合起來,完成特定的功能。
UML代表了物件導向分析設計方法。
2 UML帶來了什麼
UML是什麼:UML是一種建模語言。它定義了:
- 建立模型所需要的、表達某種特定含義的基本元素----元模型
- 元模型之間關係的規則
- 視覺化: 就是可圖形化, 一圖勝千言
建模是指通過通過對客觀事物建立起一種抽象的方法,用來表徵事物並獲得對事物本身的理解,在把這種理解概念化,並將這些邏輯概念組織起來,形成對所觀察的內部結構和工作原理的便於理解的表達。
一個完整的建模過程可以劃分為以下幾個步奏:
- 從現實世界到業務模型
- 從業務模型到概念模型
- 從概念模型到設計模型
建模是一個抽象的過程。 我們現在來抽象世界。我們世界的本質是由人、事、物和規則組成。
在uml中,人成為參與者,事成為了用例, 看下如圖所示模型演化圖:
3 總結
物件導向方法是一種更高抽象層次的方法。而uml給物件導向的方法建模以一種圖形化的表達和描述。