您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“C#中UML基礎知識點的示例分析”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“C#中UML基礎知識點的示例分析”這篇文章吧。
C#UML基礎
面向對象編程方法學是C#編程的指導思想。進行C#編程的***步是利用對象建模技術(ObjectModelingTechnique,OMT)來分析目標問題,抽象出相關對象的共性,對它們進行分類,并分析各類之間的關系,再用類來描述同一類對象,歸納出類之間的關系。Coad和Yourdon在對象建模技術、面向對象編程和知識庫系統(tǒng)的基礎之上設計了一整套面向對象的方法,分為面向對象分析(Object-OrientedAnalysis,OOA)和面向對象設計(Object-OrientedDesign,OOD)。對象建模技術、面向對象分析和面向對象設計共同構成了系統(tǒng)設計的過程,如圖6-1所示。這是編寫代碼的基礎。
系統(tǒng)設計流程
在進行對象建模、面向對象分析和設計的過程中,需要使用建模語言來描述分析的過程和結果。統(tǒng)一建模語言(UnifiedModelingLanguage,UML)是為了這個目標而設計的一種標準通用的設計語言。任何想要真正理解面向對象編程思想的人,都需要具備一定的UML知識。
C#UML基礎中UML不是一種方法學,而是一種描述語言,它提供了多種類型的模型描述圖(diagram),當在某種給定的方法學中使用這些圖時,人們就能更容易理解和交流設計思想。UML的圖可劃分為如下三種類型。
—靜態(tài)圖(staticdiagram):描述了那些不發(fā)生變化的軟件元素的邏輯結構,描繪了類、對象、數(shù)據(jù)結構及其存在于它們之間的關系。
—動態(tài)圖(dynamicdiagram):展示了在運行期間的軟件實體的變化,描繪了執(zhí)行流程、實體改變狀態(tài)的方式。
—物理圖(physicaldiagram):顯示了軟件實體的不變化的物理結構,描繪庫文件、字節(jié)文件、數(shù)據(jù)文件等,以及存在于它們之間的關系。
用例圖
C#UML基礎中的用例圖描述了系統(tǒng)提供的一個功能單元。用例圖的主要目的是幫助開發(fā)團隊以一種可視化的方式來理解系統(tǒng)的功能需求,包括基于基本流程的“角色”之間的關系,以及系統(tǒng)內用例之間的關系。用例圖一般用于表示用例的組織關系,要么是整個系統(tǒng)的全部用例,要么是完成具有功能(例如,所有安全管理相關的用例)的一組用例。
用例(usecase)指的是系統(tǒng)的功能,它是系統(tǒng)某個功能的所有執(zhí)行動作的集合。用例是從一個用戶的觀點來描述的。這個用戶告訴系統(tǒng)去做一些特定的事情。一個用例捕獲一個事件的可視化序列,這個事件是一個系統(tǒng)對單個用戶的激勵(stimulus)的響應過程。
動作者(actor)表示系統(tǒng)用戶能扮演的角色(role)。這些用戶可能是人,也可能是其他的計算機、一些硬件,或者甚至是其他的軟件系統(tǒng)。對用例的***要求是,它們必須位于用例描述的系統(tǒng)部分之外,它們必須能刺激系統(tǒng)部分,并接收返回。
用例描述了當動作者之一給系統(tǒng)特定的刺激時的系統(tǒng)活動。這些活動用文本來描述。它描述了觸發(fā)用例的刺激的本質,輸入和輸出到其他活動者,以及從輸入到輸出的活動。用例文本通常也描述每一個活動可能的錯誤和系統(tǒng)應采取的補救措施。
在用例圖中,用橢圓來表示用例,并將用例的名稱放在橢圓的中心或橢圓下面的中間位置。人形符號用來表示角色(用戶)。角色和用例之間的關系使用簡單的線段來描述,表示角色可以操作此用例。
在用例圖中,用一個方框來表示系統(tǒng)的邊界。所有系統(tǒng)用例都放在框內,所有動作者都位于框外。動作者和用例之間用直線相連。方框內的每一件事物都是系統(tǒng)的一部分,方框外的每一件事物都是系統(tǒng)的外部。用例圖也可以表示方框內的系統(tǒng)用例之間的關系,最常見的是“使用關系”,用帶箭頭的直線來表示,箭頭指向被使用的用例。還有一種關系是擴展關系,用來表示繼承。
序列圖
C#UML基礎中的序列圖顯示具體用例(或用例的一部分)的詳細流程。它幾乎是自描述的,并且顯示了流程中不同對象之間的交互關系,同時還可以很詳細地顯示對不同對象的各種調用。
序列圖有兩個維度:垂直維度以發(fā)生的時間順序顯示消息/調用的序列;水平維度顯示對象實例之間的交互。
對象之間的交互包括:
—調用(call):一個對象調用另一個對象(或者自己)的方法。
—返回(return):返回一個值作為方法調用的結果。
—發(fā)送(send):一個對象給另一個對象(或者自己)異步發(fā)送一個消息。
—創(chuàng)建(create):一個對象實例化另一個對象。
—銷毀(destroy):一個對象銷毀另一個對象(或者自己)。
序列圖的繪制非常簡單。圖的頂部的框表示類的實例(對象)。在框中,類實例名稱和類名稱之間用空格/冒號/空格來分隔(例如,gen:ReportGenerator)。如果某個類實例向另一個類實例發(fā)送一條消息,則繪制一條具有指向接收類實例的開箭頭的連線,并把消息/方法的名稱放在連線上面。對于某些特別重要的消息,可以繪制一條具有指向發(fā)起類實例的開箭頭的虛線,將返回值標注在虛線上。包括返回值的虛線,有助于序列圖的閱讀。
閱讀序列圖也非常簡單。從左上角啟動序列的“驅動”類實例開始,然后順著每條消息往下閱讀。
以上是“C#中UML基礎知識點的示例分析”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。