天天看點

【UML】初識UML(一)

什麼是UML

    UML全稱是Unified Modeling Language,又稱統一模組化語言。為面向對象開發系統的産品進行說明、可視化和編制文檔的一種标準語言。

UML的特點

    .UML統一了各種方法對不同類型的系統、不同開發階段以及不同内部概念的不同觀點,進而有效的消除了各種模組化語言之間不必要的差異。他實際上是一種通用的模組化語言,可以為許多面向對象模組化方法的使用者廣泛使用

    .UML模組化能力比其它面向對象模組化方法更強。它不僅适合于一般系統的而開發,而且對并行、分布式系統的模組化尤為适宜

    .UML是一種模組化語言,而不是一個開發過程

面向對象方法

  面向對象(Object Oriented,簡稱OO)方法将世界看做一個個互相獨立的對象,互相之間并無因果關系,它們平時是“雞犬之聲相聞,老死不相往來”的。隻有在某個外部力量的驅動下,對象之間才會一句某種規律互相傳遞資訊。這些互動構成了這個生動世界的一個“過程”。在沒有外力的情況下,對象則保持着“靜止”的狀态。 

從微觀角度說,這些獨立的對象有着一系列奇妙的特性。例如,對象有着堅硬的外殼,從外部來看,除了它用來與外界互動的消息通道外,對象内部就是一個黑匣子,什麼也看不到,就被稱為封裝;再例如對象可以結合在一起形成新的對象,結合後的對象具有前兩者特性的總和,這稱為聚合;對象可以繁育,産下的孩子将擁有父輩全部的本領,這稱為繼承;對象都是多面派,他會根據不同的要求展現其中的一個面,這就是接口;多個對象可能長着相同的臉,而這張臉背後卻有着不同的行為,這就是多态…… 

從宏觀角度說,對象是“短視”的,他不知道它身處的整個世界是怎麼回事,也不知道它的行為是如何貢獻給這個世界的。它隻知道與它有着聯系的身邊的一群小夥伴(這稱為依賴),并與小夥伴保持着資訊交流的關系(這稱為耦合)。同僚對象也是“自私”的,即便在夥伴之間,每個對象也仍然頑固地保護着自己的領地,隻允許其他人通過她打開的小小視窗(這稱為方法)進行交流,從不會向對方敞開心扉。 

  面向對象與面向過程方法根本的不同,就是不在把世界看作是一個緊密相連的系統,而是看成一些互相獨立的小零件,這些零件依據某種規則組織起來,完成一個特定的功能。原來,過程并非這個世界的本源,過程是由通過特定規則組織起來的一些對象“表現”出來的。面向對象和面向過程的這個差别導緻了這個分析設計方法的革命。分析設計從過程分析變成了對象擷取,從資料結構變成了對象結構。

     但是每件事情也不是十全十美的,總會有些困難:

       .對象是如何抽象出來的?

       .為什麼要這樣抽象對象

       .如何組合抽象出來的對象正好可以滿足需求?

       .抽象出來的對象又是如何表達需求的?

說到了這裡,就不得不說一下模組化了,因為它就是解決上述問題的答案!!!

欲知後事如何,請看下回分解!

【UML】初識UML(一)
UML