日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

『软件工程13』浅谈面向对象方法,统一建模语言UML

發(fā)布時間:2023/12/4 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 『软件工程13』浅谈面向对象方法,统一建模语言UML 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

淺談面向?qū)ο蠓椒║ML

  • 一、UML的含義
  • 二、UML的主要內(nèi)容
    • 1、UML的概念模型
    • 2、UML概念模型圖例
  • 三、UML的基本構(gòu)造塊
    • 1、UML中的事物
      • (1)UML中的四種事物
      • (2)UML中各種事物的圖示法
    • 2、UML中的四種關(guān)系
      • (1)依賴
      • (2)關(guān)聯(lián)
      • (3)泛化
      • (4)實現(xiàn)
    • 3、UML中的圖形(五大類十種圖)
      • (1)用例圖
      • (2)靜態(tài)圖:類圖、對象圖、包圖
      • (3)行為圖:狀態(tài)圖、活動圖
      • (4)交互圖:順序圖、協(xié)作圖
      • (5)實現(xiàn)圖:構(gòu)建圖、部署圖
  • 四、寫在最后

在下面的這篇文章中,將講解我們平常常用的一種面向?qū)ο蟮漠媹D方法,即統(tǒng)一建模語言UML(Unified Modeling Language)。

接下來開始進(jìn)行講解。

一、UML的含義

  • 標(biāo)準(zhǔn)的建模語言(具有語言的規(guī)范)
  • 促進(jìn)溝通(各種圖示表達(dá)規(guī)范)
  • 支持系統(tǒng)構(gòu)建(正向工程,反向工程)

二、UML的主要內(nèi)容

1、UML的概念模型

UML具有一個完整的概念模型,提供了一套完整、全面的表達(dá)方法,其主要元素包括:①UML的基本構(gòu)造塊支配這些構(gòu)造塊如何放在一起的規(guī)則一些運用于整個UML的公共機制

2、UML概念模型圖例

UML概念模型{基本構(gòu)造塊{事物:結(jié)構(gòu)事物、行為事物、分組事物、注釋事物關(guān)系:依賴、關(guān)聯(lián)、泛化、實現(xiàn)圖:用例圖、類圖、對象圖、包圖、交互圖等規(guī)則公共機制{規(guī)格說明修飾通用劃分?jǐn)U展機制\begin{cases} 基本構(gòu)造塊\begin{cases} 事物:結(jié)構(gòu)事物、行為事物、分組事物、注釋事物 \\ 關(guān)系:依賴、關(guān)聯(lián)、泛化、實現(xiàn) \\ 圖:用例圖、類圖、對象圖、包圖、交互圖等 \end{cases} \\ 規(guī)則 \\ 公共機制\begin{cases} 規(guī)格說明 \\ 修飾 \\ 通用劃分 \\擴展機制 \end{cases} \end{cases}??????????????????????????????構(gòu)??????結(jié)構(gòu)關(guān)關(guān)聯(lián)現(xiàn)?規(guī)??????????規(guī)??

下面依據(jù)概念模型中的這三大類進(jìn)行一一講解。

三、UML的基本構(gòu)造塊

在UML中可以將詞匯劃分為3中構(gòu)造塊,即3類詞匯或基本元素:事物、關(guān)系和圖。

1、UML中的事物

(1)UML中的四種事物

事物是對模型中最具有代表性的成分的抽象,可分為結(jié)構(gòu)事物行為事物分組事物注釋事物

1)結(jié)構(gòu)事物

通常是模型的靜態(tài)部分,描述概念的物理元素。主要有以下五種結(jié)構(gòu)事物:

  • 類 (class) :與面向?qū)ο蠓椒ㄖ蓄惖母拍钜恢隆?/li>
  • 接口 (interface) :描述了一個類或構(gòu)件的一個服務(wù)的操作集。
  • 用例 (use case) :代表了一個系統(tǒng)功能,是對一組動作序列的描述,系統(tǒng)執(zhí)行這些動作將產(chǎn)生一個對特定的參與者(即系統(tǒng)用戶)有價值而且可觀察的結(jié)果。
  • 構(gòu)件 (component) :描述的是系統(tǒng)中的軟件物理事物。
  • 節(jié)點 (node) :是在運行時存在的物理元素,表示了一種可計算的資源。

2)行為事物

行為事物主要有:狀態(tài)、交互。

3)分組事物

分組事物主要有:包。

4)注釋事物

注釋事物主要有:注解。

(2)UML中各種事物的圖示法

依據(jù)上面對四種事物的描述,下面給出UML中各種事物的圖示。

2、UML中的四種關(guān)系

UML中的四種關(guān)系是:依賴、關(guān)聯(lián)、泛化、實現(xiàn)。

(1)依賴

兩個模型元素中,有一個是獨立的,一個是非獨立的,獨立的模型元素發(fā)生改變,會影響非獨立的模型元素

用帶箭頭的虛線來表示依賴關(guān)系。

如圖所示:

(2)關(guān)聯(lián)

關(guān)聯(lián)是一種結(jié)構(gòu)化的關(guān)系,指兩個模型元素有聯(lián)系。雙向關(guān)聯(lián)用一條實線來表示。

注意:關(guān)聯(lián)關(guān)系有多重度,主要有: 0 、 1 、 0..1 、 0..* 、 1..* 。

如圖所示:

值得注意的是,關(guān)聯(lián)中有兩種特殊的關(guān)聯(lián)關(guān)系:組合和聚合

如果是組合和聚合類型,則再加一個棱形符號

如下圖所示:


(3)泛化

一般特殊的關(guān)系,也就是繼承的關(guān)系。用實線加空心三角號來表示。

如圖所示:

(4)實現(xiàn)

實現(xiàn)關(guān)系是,一種模型元素保證另外一種模型元素的執(zhí)行,該關(guān)系主要用在接口中。用一條實線來表示。

如圖所示:

講到這里,以下再給出一張完整的圖來回顧這四種關(guān)系。

3、UML中的圖形(五大類十種圖)

(1)用例圖

1)用例圖的定義

用例圖從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。

用例圖顯示若干角色執(zhí)行者 (actor) 以及這些角色與系統(tǒng)提供的用例之間的連接關(guān)系。用例圖定義的是系統(tǒng)的功能需求

2)用例圖的基本構(gòu)成

  • 用例;
  • 角色;
  • 角色之間的關(guān)系(如果有,主要是泛化);
  • 角色和用例之間的關(guān)系(單向關(guān)聯(lián)或雙向關(guān)聯(lián));
  • 用例和用例之間的關(guān)系(包含、擴展、泛化)。

3)元素與元素之間的關(guān)系

include:

  • include(包含關(guān)系),當(dāng)兩個或多個用例中共用一組相同的動作,可以將其抽出來作為一個獨立的子用例,供多個基用例所共享。
  • 基用例并非一個完整的用例,所以必須和子用例一起使用才夠完整。
  • include關(guān)系在用例圖中使用帶箭頭的虛線表示(在線上標(biāo)注 <<include>> ),箭頭從基用例指向子用例

extend:

  • extend(擴展關(guān)系),對基用例的擴展,基用例是一個完整的用例,即使沒有子用例的參與,也可以完成一個完整的功能。
  • extend的基用例中將存在一個擴展點,只有當(dāng)擴展點被激活時,子用例才會被執(zhí)行。
  • extend關(guān)系在用例圖中使用帶箭頭的虛線表示(在線上標(biāo)注 <<extend>> ),箭頭從子用例指向基用例

子用例和基用例的關(guān)系:

(泛化關(guān)系)子用例將繼承父用例的所有結(jié)構(gòu)、行為和關(guān)系。也就是說在任何使用基用例的地方都可以用子用例來代替。

(泛化關(guān)系)在用例圖中使用空心的箭頭表示,箭頭方向從子用例指向基用例

4)圖示

(2)靜態(tài)圖:類圖、對象圖、包圖

1)類圖

①定義: 類圖(class diagram)描述系統(tǒng)所有涉及到的類以及類和類之間的關(guān)系。

②類圖的基本構(gòu)成:

  • 類(類名、屬性和方法);
  • 類和類之間的關(guān)系(依賴、關(guān)聯(lián)、泛化、實現(xiàn))。

2)對象圖

①定義: 對象圖是類圖的實例,幾乎使用與類圖完全相同的標(biāo)識,但兩者之間又有一定的差別,如下圖例所示。

②圖例:

(3)行為圖:狀態(tài)圖、活動圖

1)狀態(tài)圖

①定義: 狀態(tài)圖(state chart diagram)描述系統(tǒng)涉及到的某個對象的所有狀態(tài)以及狀態(tài)和狀態(tài)之間轉(zhuǎn)換的事件。

②狀態(tài)圖的基本構(gòu)成:

  • 狀態(tài)(圓角矩形);
  • 狀態(tài)的起點、終點;
  • 狀態(tài)之間轉(zhuǎn)換的事件;
  • 注解(有時會有)。

③圖例:

2)活動圖

①定義: 活動圖(activity diagram)描述滿足用例功能需求所要進(jìn)行的活動以及活動間的約束關(guān)系。

②活動圖的基本構(gòu)成:

  • 活動(注意符號與狀態(tài)不同);
  • 活動的起點、終點(終點有時有多個);
  • 活動之間用箭頭連接;
  • 判定(有時會有,棱型框);
  • 同步條(表示活動的分叉或匯合,包括水平、垂直兩種);
  • 泳道(表示活動的不同職責(zé))。

③圖例:

(4)交互圖:順序圖、協(xié)作圖

1)順序圖

①定義: 順序圖顯示對象之間的動態(tài)合作關(guān)系。。

②順序圖的基本構(gòu)成:

  • 對象;
  • 生命線(對象正下方的虛線,表示對象在一段時期內(nèi)的存在) ;
  • 窄矩形條(表示對象被激活,說明對象正在執(zhí)行某種操作);
  • 交互的消息(有順序之分,消息其實就是接收對象的操作方法);
  • 注解(有時會有);
  • 可以轉(zhuǎn)換成協(xié)作圖。

③圖例:

2)協(xié)作圖

①定義: 協(xié)作圖(callobaration diagram)和順序圖的作用一樣,反映的也是動態(tài)協(xié)作

②協(xié)作圖的基本構(gòu)成:

  • 對象;
  • 實線(對象之間的連接線,注意沒有箭頭) ;
  • 交互的消息(有順序之分,消息其實就是接收對象的操作方法);
  • 注解(有時會有);
  • 可以轉(zhuǎn)換成順序圖。

③圖例:

(5)實現(xiàn)圖:構(gòu)建圖、部署圖

1)構(gòu)件圖

**①定義:**描述代碼構(gòu)件的物理結(jié)構(gòu)以及各構(gòu)件之間的依賴關(guān)系。

②構(gòu)件圖的基本構(gòu)成: 構(gòu)件。

③圖例:

2)部署圖

①定義: 系統(tǒng)中硬件的物理體系結(jié)構(gòu)。

②部署圖的基本構(gòu)成:

  • 三維立方體表示部件;
  • 節(jié)點名稱位于立方體上部。

③圖例:

四、寫在最后

到這里,關(guān)于軟件工程的體系知識就講解結(jié)束啦!后面將會繼續(xù)更新一些實踐的內(nèi)容。敬請期待!

如有需要了解軟件工程相關(guān)的其他內(nèi)容,可到『軟件工程』欄目進(jìn)行查看學(xué)習(xí)~

🙋🙋🙋

同時,有不理解或有誤的地方也歡迎評論區(qū)評論或私信我交流~

  • 關(guān)注公眾號 星期一研究室 ,不定期分享學(xué)習(xí)干貨,學(xué)習(xí)路上不迷路~
  • 如果這篇文章對你有用,記得點個贊加個關(guān)注再走哦~

總結(jié)

以上是生活随笔為你收集整理的『软件工程13』浅谈面向对象方法,统一建模语言UML的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。