uml图是谁画的啊?
生活随笔
收集整理的這篇文章主要介紹了
uml图是谁画的啊?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
UML的ER圖就是數據庫建模數據庫對象建模包括:表(Table)對象:新建表;編輯表屬性視圖(View)對象:新建視圖;編輯視圖屬性列(Column)對象:新建列;編輯列屬性索引(Index)對象:新建索引;編輯索引屬性
這個圖是思維導圖的畫法,用來記錄狀態圖的相關信息,不是uml狀態圖的畫法,UML模型需要uml建模工具才可以,比如rose或者trufun plato等,可以到trufun.net免費下載。uml狀態圖元素如下,核心的元素有狀態、初始狀態、選擇、分叉、結合、轉換等。UML狀態圖樣式
UML是種建模型語言,UML語言的元素就是圖形,附帶部分文字說明,UML可以用來設計軟件系統,對軟件的結構、工作流程等進行表示。visio是繪圖軟件,可以用來繪制UML模型圖。
UML 類圖簡介 UML 對很多人來說應該不是一個陌生的概念,這一兩年來,UML 被大家越來越多的討論著。本來 UML 跟我這個主題似乎并不能扯上多大的關系(它是語言無關的,甚至可以說其本身就是一種語言——用于交流的)。我在此談到它有兩個目的: 1. UML 是針對面向對象軟件開發的,而 C++正是這樣的一種語言 2. UML 在設計中被越來越多的使用著,而下一篇雜談準備討論設計模式,如果不了解 UML,那么無法進行下去 UML,全稱:Unified Modeling Language,其目的是為了對軟件密集型的制品進行可視化、詳述、構造和文檔化的圖形語言。UML 是依據許多前人的思想總結出的成果,1997 年被 OMG 通過并成為標準(所以在《設計模式》書中如果你看到與標準不一樣的地方,不要奇怪,那本書是 95 年的)。關于 UML 的歷史和更詳細的描述,可以參考《UML 參考手冊》。UML 主要由一系列視圖組成,其中包括靜態視圖(Static vi ew),用例視圖(Use case view)活動視圖(Acti vity view)等,不同的圖用處自然也不一樣,而對開發人員來講(或者說為我的下一篇來說),更重要的應該是靜態視圖中的類圖(class diagram)和交互視圖(Interaction view)中的順序圖(Sequence diagram),請注意 view 和 diagram 的區別。 類圖 靜態視圖說明了對象的結構,其中最常用的就是類圖,類圖可以幫助我們更直觀的了解一個系統的體系結構,有時侯,描述系統快照的對象圖(Object diagram)也是很有用的。在這里,我們主要介紹類圖,下面的圖就是一個簡單的類圖: 在類圖中,類由矩形框來表示,如上圖中,定義了 4 個類,分別為 Base、A、B、 C,類之間的關系通過各種線條和其他符號來表示,在上圖中,空心的三角表示繼承關系,在 UML 的術語中,這種關系被稱為泛化(Generalization),所以上面的類用等價代碼表示為: class Base{…}; class A:public Base{…}; class B:public Base{…}; class C:public Base{…}; 我們再看下一幅圖: 這幅圖與上幅幾乎沒有什么區別,唯一的不同就是 Base 類中增加了成員,一個私有的 integer _x(UML 術語為 property)和一個公有的 fun()的函數(method),是否需要這些類的內部細節 UML 本身并沒有限制,完全取決于你自己如何使用, UML 的用處在于幫助你了解系統,所以只要你自己覺得足夠清楚,那么夠了,不要再復雜了。 接著看第三幅圖: 上面圖中的箭頭表示一種關系,箭頭另一邊有一個菱形(空心)表示聚合(aggregation),聚合的意義表示 has-a 關系,其等價代碼如下: class A{…}; class B{ A* theA;…}; 聚合是一種相對松散的關系,聚合類 B 不需要對被聚合的類 A 負責。 下面的圖: 這幅圖與上面的唯一區別是菱形為實心的,它代表了一種更為堅固的關系——組合(composition)。組合表示的關系也是 has-a,不過在這里,A 的生命期受 B 控制,通常情況,等價代碼如下: class A{…}; class B{A theA;…}; 即 A 會隨著 B 的創建而創建,隨 B 的消亡而消亡。 下圖: 這里 B 與 A 的關系只是一種依賴關系,這種關系表明,如果類 A 被修改,那么類 B 會受到影響,一個簡單的例子就是: class A{…}; class B{fun(A params);…}; 常用的關系就是我們上面用的這些,通過這些關系和類表示的類圖,我們可以用圖形化的方式描述一個系統的設計部分,當你習慣使用 UML 后,你會發現,這往往比你告訴同伴某某類從某某類派生,派生類又和某某類具有什么關系容易的多。 順序圖: UML 中另外一個常用的圖形就是交互視圖中的順序圖,在以往的過程化語言中,我們通常使用流程圖來描述一個函數(系統)是如何工作的,而在面向對象的系統中,這顯然是不可行的,而順序圖正是來解決這個問題的。 假設有如下的偽代碼: class circle { public: void fillcolor() { // ... }; void draw() { fillcolor(); }; }; class window { public: void drawcircle() { _circle.draw(); }; private: circle _circle; }; 對于下面的調用: window wnd; wnd.drawcircle(); 對應的順序圖如下: 圖中上方的方塊表示參與的對象,垂直的虛線表示對象的生命線,方框表示激活,其中箭頭表示了一個調用消息(也可以有回送 return),如果是異步的消息,則用半箭頭表示,其中 draw 表示了一個自調用(self call) 至此,UML 中最常用的(從開發人員的角度),當然 UML 的內容遠遠不只這些,這里的介紹只是一些簡單的概括,并且 UML 本身也在不斷的發展之中,無論怎樣,我覺得 UML 會越來越多的深入我們的開發過程中,特別是對下一篇我們要介紹的設計模式而言,類圖是主要的描述工具(到那個時候你會體會到 UML 描述的優越)。 如果你看過《設計模式》著本書,你會發現與我上面所描述的有一些細微的不同,不要緊張,《設計模式》是 GOF95 年的作品,那時候 UML 還沒有形成,而且,其中也明確那是 OMT 方法(Jim Rumbaugh 在通用電氣發表的建模技術——Object Modeling Technique)和 Booch 方法。
這個圖是思維導圖的畫法,用來記錄狀態圖的相關信息,不是uml狀態圖的畫法,UML模型需要uml建模工具才可以,比如rose或者trufun plato等,可以到trufun.net免費下載。uml狀態圖元素如下,核心的元素有狀態、初始狀態、選擇、分叉、結合、轉換等。UML狀態圖樣式
UML是種建模型語言,UML語言的元素就是圖形,附帶部分文字說明,UML可以用來設計軟件系統,對軟件的結構、工作流程等進行表示。visio是繪圖軟件,可以用來繪制UML模型圖。
UML 類圖簡介 UML 對很多人來說應該不是一個陌生的概念,這一兩年來,UML 被大家越來越多的討論著。本來 UML 跟我這個主題似乎并不能扯上多大的關系(它是語言無關的,甚至可以說其本身就是一種語言——用于交流的)。我在此談到它有兩個目的: 1. UML 是針對面向對象軟件開發的,而 C++正是這樣的一種語言 2. UML 在設計中被越來越多的使用著,而下一篇雜談準備討論設計模式,如果不了解 UML,那么無法進行下去 UML,全稱:Unified Modeling Language,其目的是為了對軟件密集型的制品進行可視化、詳述、構造和文檔化的圖形語言。UML 是依據許多前人的思想總結出的成果,1997 年被 OMG 通過并成為標準(所以在《設計模式》書中如果你看到與標準不一樣的地方,不要奇怪,那本書是 95 年的)。關于 UML 的歷史和更詳細的描述,可以參考《UML 參考手冊》。UML 主要由一系列視圖組成,其中包括靜態視圖(Static vi ew),用例視圖(Use case view)活動視圖(Acti vity view)等,不同的圖用處自然也不一樣,而對開發人員來講(或者說為我的下一篇來說),更重要的應該是靜態視圖中的類圖(class diagram)和交互視圖(Interaction view)中的順序圖(Sequence diagram),請注意 view 和 diagram 的區別。 類圖 靜態視圖說明了對象的結構,其中最常用的就是類圖,類圖可以幫助我們更直觀的了解一個系統的體系結構,有時侯,描述系統快照的對象圖(Object diagram)也是很有用的。在這里,我們主要介紹類圖,下面的圖就是一個簡單的類圖: 在類圖中,類由矩形框來表示,如上圖中,定義了 4 個類,分別為 Base、A、B、 C,類之間的關系通過各種線條和其他符號來表示,在上圖中,空心的三角表示繼承關系,在 UML 的術語中,這種關系被稱為泛化(Generalization),所以上面的類用等價代碼表示為: class Base{…}; class A:public Base{…}; class B:public Base{…}; class C:public Base{…}; 我們再看下一幅圖: 這幅圖與上幅幾乎沒有什么區別,唯一的不同就是 Base 類中增加了成員,一個私有的 integer _x(UML 術語為 property)和一個公有的 fun()的函數(method),是否需要這些類的內部細節 UML 本身并沒有限制,完全取決于你自己如何使用, UML 的用處在于幫助你了解系統,所以只要你自己覺得足夠清楚,那么夠了,不要再復雜了。 接著看第三幅圖: 上面圖中的箭頭表示一種關系,箭頭另一邊有一個菱形(空心)表示聚合(aggregation),聚合的意義表示 has-a 關系,其等價代碼如下: class A{…}; class B{ A* theA;…}; 聚合是一種相對松散的關系,聚合類 B 不需要對被聚合的類 A 負責。 下面的圖: 這幅圖與上面的唯一區別是菱形為實心的,它代表了一種更為堅固的關系——組合(composition)。組合表示的關系也是 has-a,不過在這里,A 的生命期受 B 控制,通常情況,等價代碼如下: class A{…}; class B{A theA;…}; 即 A 會隨著 B 的創建而創建,隨 B 的消亡而消亡。 下圖: 這里 B 與 A 的關系只是一種依賴關系,這種關系表明,如果類 A 被修改,那么類 B 會受到影響,一個簡單的例子就是: class A{…}; class B{fun(A params);…}; 常用的關系就是我們上面用的這些,通過這些關系和類表示的類圖,我們可以用圖形化的方式描述一個系統的設計部分,當你習慣使用 UML 后,你會發現,這往往比你告訴同伴某某類從某某類派生,派生類又和某某類具有什么關系容易的多。 順序圖: UML 中另外一個常用的圖形就是交互視圖中的順序圖,在以往的過程化語言中,我們通常使用流程圖來描述一個函數(系統)是如何工作的,而在面向對象的系統中,這顯然是不可行的,而順序圖正是來解決這個問題的。 假設有如下的偽代碼: class circle { public: void fillcolor() { // ... }; void draw() { fillcolor(); }; }; class window { public: void drawcircle() { _circle.draw(); }; private: circle _circle; }; 對于下面的調用: window wnd; wnd.drawcircle(); 對應的順序圖如下: 圖中上方的方塊表示參與的對象,垂直的虛線表示對象的生命線,方框表示激活,其中箭頭表示了一個調用消息(也可以有回送 return),如果是異步的消息,則用半箭頭表示,其中 draw 表示了一個自調用(self call) 至此,UML 中最常用的(從開發人員的角度),當然 UML 的內容遠遠不只這些,這里的介紹只是一些簡單的概括,并且 UML 本身也在不斷的發展之中,無論怎樣,我覺得 UML 會越來越多的深入我們的開發過程中,特別是對下一篇我們要介紹的設計模式而言,類圖是主要的描述工具(到那個時候你會體會到 UML 描述的優越)。 如果你看過《設計模式》著本書,你會發現與我上面所描述的有一些細微的不同,不要緊張,《設計模式》是 GOF95 年的作品,那時候 UML 還沒有形成,而且,其中也明確那是 OMT 方法(Jim Rumbaugh 在通用電氣發表的建模技術——Object Modeling Technique)和 Booch 方法。
總結
以上是生活随笔為你收集整理的uml图是谁画的啊?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 黄金满地是谁画的呢?
- 下一篇: 国际物流多少钱啊?国际快递的收费标准