[UML漫談]
話說"工欲善其工需利其器",有了好的工具,好的表達方式,能給我們的工作變得簡單而優雅.
為了更好的講解設計模式,方便理解,需要運用一種建模設計語言----UML.
UML(UML:Unified Modeling Language),即統一建模語言,用來對軟件密集系統進行描述、構造、視化和文檔編制的一種語言.這是概念,不好理解.
UML的作用,打個比方:一段描寫迷人海灘風景的文字和一幅描繪海灘風景的油畫,去看這兩件東西的人,有的人可能能讀懂文字(可能是特定的語言),有的不認字,所以并不是所有的人能看懂文字表達的內容,但是所有的人都能讀懂油畫所表現出來的含義.油畫表達內容的直接,形象,豐富特性就類型UML在描敘軟件結構過程中的作用.
在軟件項目中,一般有幾個角色:用戶(User),架構設計師(orPM, SA),程序員(PG)
用戶:
也許不懂計算機,也不懂編程語言,但是懂行業業務,該軟件的功能需求.
程序員
懂計算技術,懂編程語言.但是不太了解行業邏輯.需要把客戶的業務應用需求轉變為程序代碼,
架構設計師
資深的行業架構設計師應該具有一定的行業知識,既能聽懂客戶的業務需求,又能知道怎么告訴程序員去用代碼實現.
架構設計師在前兩者交流中起到承前啟后的"中間體"作用.UML就是采用圖形化的形式來表達架構和設計.成為了建模設計的通用的設計標準..

UML圖讓信息交流變得簡單
[UML基礎]
此處只介紹幫助理解設計模式的UML基礎,具體其他的UML圖示需要參考具體的講解UML的書籍.
1.類的層級關系
UML中的類圖是一種可表示一組類,對象實例和接口之間的靜態關系圖.
如圖的UML類圖表達了上面代碼的含義,
類之間的關系有四種:依賴,泛化,實現聚集,組成.具體的UML實例可以參UML基礎.
2.接口和實現
實現接口的UML示例如下:
interface Printable {
abstract void print();
}
public class PrintClass implements Printable {
public void print() {
// how to print
}
}
接口,抽象,實現,繼承在設計模式中被廣泛的使用,這也是OOD的優勢所在.美妙所在.
這里只舉出了幾個簡單情形,讓大家有個感性的了解,具體的情形在說具體的設計模式的時候在針對性的說明,先不用弄那么多,那么雜,能開始下一步就足夠.
類之間的關系
類之間的關系有5種,
關聯 依賴 聚集 泛化 實現