火龍果基礎(chǔ)與應(yīng)用第一章_第1頁(yè)
火龍果基礎(chǔ)與應(yīng)用第一章_第2頁(yè)
火龍果基礎(chǔ)與應(yīng)用第一章_第3頁(yè)
火龍果基礎(chǔ)與應(yīng)用第一章_第4頁(yè)
火龍果基礎(chǔ)與應(yīng)用第一章_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、朱海波朱海波 UMLUML基礎(chǔ)與應(yīng)用基礎(chǔ)與應(yīng)用 第一章 UML概述 教學(xué)內(nèi)容: 了解了解UMLUML和面向?qū)ο蠓椒ǖ幕靖拍詈兔嫦驅(qū)ο蠓椒ǖ幕靖拍?UMLUML的歷史、特點(diǎn)的歷史、特點(diǎn) 面向?qū)ο蠼C嫦驅(qū)ο蠼?UMLUML的組成的組成 面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο蟮幕靖拍?1.1 UML簡(jiǎn)介 UML是一種是一種Language(語(yǔ)言)(語(yǔ)言) UML是一種是一種Modeling(建模)(建模)Language UML是是Unified(統(tǒng)一)(統(tǒng)一)Modeling Language UML(Unified Modeling Language)譯)譯 為為“統(tǒng)一建模語(yǔ)言統(tǒng)一建模語(yǔ)言”,是一

2、種面向?qū)ο蟮氖且环N面向?qū)ο蟮?建模語(yǔ)言建模語(yǔ)言。 UMLUML的背景和歷史的背景和歷史 20世紀(jì)世紀(jì)70年代中期產(chǎn)生了面向?qū)ο蟮能浖_(kāi)發(fā)方法,面年代中期產(chǎn)生了面向?qū)ο蟮能浖_(kāi)發(fā)方法,面 向?qū)ο蟮姆治觯ㄏ驅(qū)ο蟮姆治觯∣OA)和面向?qū)ο蟮脑O(shè)計(jì)()和面向?qū)ο蟮脑O(shè)計(jì)(OOD)方法)方法 已逐漸取代了傳統(tǒng)的方法,成為我國(guó)當(dāng)前計(jì)算機(jī)軟件工已逐漸取代了傳統(tǒng)的方法,成為我國(guó)當(dāng)前計(jì)算機(jī)軟件工 程學(xué)中的主流方法。程學(xué)中的主流方法。 但是眾多的面向?qū)ο蠓椒ǜ饔刑厣?,也各有不足,而且但是眾多的面向?qū)ο蠓椒ǜ饔刑厣?,也各有不足,而?術(shù)語(yǔ)不統(tǒng)一,缺乏共同標(biāo)準(zhǔn),常給軟件開(kāi)發(fā)人員帶來(lái)困術(shù)語(yǔ)不統(tǒng)一,缺乏共同標(biāo)準(zhǔn),常給軟件開(kāi)發(fā)

3、人員帶來(lái)困 惑?;?。 最流行的面向?qū)ο蠓椒ㄊ亲盍餍械拿嫦驅(qū)ο蠓椒ㄊ? Rumbaugh的的OMT方法,方法, Booch的的Booch方法和方法和Jacobson的的OOSE方法。方法。 UML的誕生 Rational三劍客 Jim Rumbaugh Grady Booch Ivar Jacobson 從從1995年起,三位學(xué)者一起合作、共同努力,綜年起,三位學(xué)者一起合作、共同努力,綜 合了他們各自原創(chuàng)的面向?qū)ο蟮姆治雠c設(shè)計(jì)方法,合了他們各自原創(chuàng)的面向?qū)ο蟮姆治雠c設(shè)計(jì)方法, 加以擴(kuò)充改進(jìn),并汲取其他同類方法的優(yōu)點(diǎn),提加以擴(kuò)充改進(jìn),并汲取其他同類方法的優(yōu)點(diǎn),提 出了統(tǒng)一建模語(yǔ)言出了統(tǒng)一建模語(yǔ)言U

4、ML。1997年被美國(guó)工業(yè)標(biāo)年被美國(guó)工業(yè)標(biāo) 準(zhǔn)化組織準(zhǔn)化組織OMG(Object Management Group) 接受,并發(fā)布了接受,并發(fā)布了UML的標(biāo)準(zhǔn)版本。的標(biāo)準(zhǔn)版本。 UML一經(jīng)推出便得到了許多著名計(jì)算機(jī)廠商如一經(jīng)推出便得到了許多著名計(jì)算機(jī)廠商如 IBM、Sun、HP、Oracle 、Microsoft等的歡迎等的歡迎 和支持?,F(xiàn)在在美國(guó)和支持。現(xiàn)在在美國(guó)UML已得到廣泛的使用,在已得到廣泛的使用,在 國(guó)際上國(guó)際上UML也正在廣泛傳播。也正在廣泛傳播。 UML的特點(diǎn) UMLUML是是BoochBooch方法、方法、OMTOMT方法、方法、OOSEOOSE方法以及其他方法以及其他 面向

5、對(duì)象方法的優(yōu)秀思想、成果和符號(hào)的統(tǒng)一體。面向?qū)ο蠓椒ǖ膬?yōu)秀思想、成果和符號(hào)的統(tǒng)一體。 UMLUML應(yīng)該在發(fā)展中不斷進(jìn)化、完善。應(yīng)該在發(fā)展中不斷進(jìn)化、完善。 UMLUML是一種可視化的建模語(yǔ)言,而不是一門程序是一種可視化的建模語(yǔ)言,而不是一門程序 設(shè)計(jì)語(yǔ)言。設(shè)計(jì)語(yǔ)言。 UMLUML獨(dú)立于軟件開(kāi)發(fā)過(guò)程,即用戶可以對(duì)任何適獨(dú)立于軟件開(kāi)發(fā)過(guò)程,即用戶可以對(duì)任何適 合的過(guò)程使用合的過(guò)程使用UMLUML進(jìn)行建模。進(jìn)行建模。 UMLUML是一種面向?qū)ο蠹夹g(shù)的是一種面向?qū)ο蠹夹g(shù)的標(biāo)準(zhǔn)建模語(yǔ)言標(biāo)準(zhǔn)建模語(yǔ)言,它支,它支 持軟件開(kāi)發(fā)中從需求分析到測(cè)試的全過(guò)程。持軟件開(kāi)發(fā)中從需求分析到測(cè)試的全過(guò)程。 1.2 什么是模

6、型 生活相關(guān):氣象圖、道路交通圖、交通標(biāo)志生活相關(guān):氣象圖、道路交通圖、交通標(biāo)志 展示相關(guān):建筑物模型、沙盤、公司總部的展示相關(guān):建筑物模型、沙盤、公司總部的3D復(fù)制品復(fù)制品 數(shù)據(jù)分析相關(guān):條形圖、餅狀圖數(shù)據(jù)分析相關(guān):條形圖、餅狀圖 業(yè)務(wù)分析相關(guān):組織結(jié)構(gòu)圖、跨職能流程圖業(yè)務(wù)分析相關(guān):組織結(jié)構(gòu)圖、跨職能流程圖 設(shè)計(jì)相關(guān):建筑平面圖、管線圖、電路板設(shè)計(jì)圖設(shè)計(jì)相關(guān):建筑平面圖、管線圖、電路板設(shè)計(jì)圖 為什么要建模?為什么要建模? 模型是對(duì)事物的一種抽象,人們常常在正式建造模型是對(duì)事物的一種抽象,人們常常在正式建造 實(shí)物之前,首先建立一個(gè)簡(jiǎn)化的模型,以便更透實(shí)物之前,首先建立一個(gè)簡(jiǎn)化的模型,以便更透

7、徹地了解它的本質(zhì),抓住問(wèn)題的要害;徹地了解它的本質(zhì),抓住問(wèn)題的要害; 在模型中,人們總是剔除那些與問(wèn)題無(wú)關(guān)的、非在模型中,人們總是剔除那些與問(wèn)題無(wú)關(guān)的、非 本質(zhì)的東西,從而使模型與真實(shí)的實(shí)體相比更加本質(zhì)的東西,從而使模型與真實(shí)的實(shí)體相比更加 簡(jiǎn)單、易于把握;簡(jiǎn)單、易于把握; 建模的重要性建模的重要性 建模便于交流。開(kāi)發(fā)人員可以使用模型討論和交流系建模便于交流。開(kāi)發(fā)人員可以使用模型討論和交流系 統(tǒng)的設(shè)計(jì)方案;用戶可以從模型中更好地理解新系統(tǒng)統(tǒng)的設(shè)計(jì)方案;用戶可以從模型中更好地理解新系統(tǒng) 提供的各種可能的功能。提供的各種可能的功能。 建模為軟件維護(hù)和升級(jí)提供了文檔。建模為軟件維護(hù)和升級(jí)提供了文檔。

8、 UML是一種統(tǒng)一的、標(biāo)準(zhǔn)化的建模語(yǔ)言是一種統(tǒng)一的、標(biāo)準(zhǔn)化的建模語(yǔ)言 UML是一種應(yīng)用面很廣泛的建模語(yǔ)言是一種應(yīng)用面很廣泛的建模語(yǔ)言 模型的種類模型的用途 業(yè)務(wù)模型對(duì)業(yè)務(wù)過(guò)程、工作流、組織的建模 需求模型對(duì)捕獲的需求進(jìn)行整理和分析的工具,輔助開(kāi)發(fā)人員與用戶進(jìn)行溝通 設(shè)計(jì)模型包含高層設(shè)計(jì)(架構(gòu)模型)和詳細(xì)設(shè)計(jì)模型,用于統(tǒng)一開(kāi)發(fā)人員、溝 通設(shè)計(jì)信息 數(shù)據(jù)庫(kù)模型設(shè)計(jì)數(shù)據(jù)庫(kù)的結(jié)構(gòu)、表結(jié)構(gòu)以及與應(yīng)用系統(tǒng)的交互 實(shí)現(xiàn)模型用來(lái)理清軟件的組成、部署方案,為安裝與維護(hù)人員的工作提供指導(dǎo) 業(yè)務(wù)建模:以領(lǐng)域?qū)<覟橹?,需求分析人員是主力,系統(tǒng)分析員、業(yè)務(wù)建模:以領(lǐng)域?qū)<覟橹?,需求分析人員是主力,系統(tǒng)分析員、 架構(gòu)師可

9、參與架構(gòu)師可參與 需求模型:以需求分析人員為主,系統(tǒng)分析員是主力,領(lǐng)域?qū)<姨嵝枨竽P停阂孕枨蠓治鋈藛T為主,系統(tǒng)分析員是主力,領(lǐng)域?qū)<姨?供指導(dǎo),架構(gòu)師和資深開(kāi)發(fā)人員參與供指導(dǎo),架構(gòu)師和資深開(kāi)發(fā)人員參與 設(shè)計(jì)模型:高層設(shè)計(jì)模型以架構(gòu)師為主,系統(tǒng)分析員從需求方面提設(shè)計(jì)模型:高層設(shè)計(jì)模型以架構(gòu)師為主,系統(tǒng)分析員從需求方面提 供支持,資深開(kāi)發(fā)人員從技術(shù)實(shí)現(xiàn)方面提供支持。詳細(xì)設(shè)計(jì)模型則供支持,資深開(kāi)發(fā)人員從技術(shù)實(shí)現(xiàn)方面提供支持。詳細(xì)設(shè)計(jì)模型則 以資深開(kāi)發(fā)人員為主,架構(gòu)師提供指導(dǎo)。以資深開(kāi)發(fā)人員為主,架構(gòu)師提供指導(dǎo)。 實(shí)現(xiàn)模型:以資深開(kāi)發(fā)人員(設(shè)計(jì)人員)為主,架構(gòu)師提供總體指實(shí)現(xiàn)模型:以資深開(kāi)發(fā)人員(設(shè)計(jì)

10、人員)為主,架構(gòu)師提供總體指 導(dǎo)。導(dǎo)。 數(shù)據(jù)庫(kù)模型:以數(shù)據(jù)庫(kù)開(kāi)發(fā)人員為主,架構(gòu)師提供指導(dǎo),資深開(kāi)發(fā)數(shù)據(jù)庫(kù)模型:以數(shù)據(jù)庫(kù)開(kāi)發(fā)人員為主,架構(gòu)師提供指導(dǎo),資深開(kāi)發(fā) 人員(設(shè)計(jì)人員)予以配合。人員(設(shè)計(jì)人員)予以配合。 1.3 UML的組成 UML由三大模塊由三大模塊 組成:元素(也組成:元素(也 稱事物)、關(guān)系稱事物)、關(guān)系 和圖。和圖。 元素是模型的抽元素是模型的抽 象;元素之間的象;元素之間的 連接紐帶是關(guān)系;連接紐帶是關(guān)系; 而圖將元素的集而圖將元素的集 合進(jìn)行分組合進(jìn)行分組。 1.3.1 UML中的元素 UMLUML中有中有4 4種元素:結(jié)構(gòu)元素,行為元種元素:結(jié)構(gòu)元素,行為元 素,分組元素

11、和注釋元素。素,分組元素和注釋元素。 1)1)結(jié)構(gòu)元素:結(jié)構(gòu)元素: 共有共有7 7種結(jié)構(gòu)元素:類、接口、協(xié)作、用例、種結(jié)構(gòu)元素:類、接口、協(xié)作、用例、 活動(dòng)類(也稱主動(dòng)類)、組件(也稱構(gòu)件)活動(dòng)類(也稱主動(dòng)類)、組件(也稱構(gòu)件) 和節(jié)點(diǎn)。和節(jié)點(diǎn)。 1 1)結(jié)構(gòu)元素)結(jié)構(gòu)元素 類是具有相同屬性、相同方法、相同語(yǔ)義和相同關(guān)系的類是具有相同屬性、相同方法、相同語(yǔ)義和相同關(guān)系的 一組對(duì)象的集合。一組對(duì)象的集合。 接口是類或組件用來(lái)為其他的類和組件提供特定服務(wù)的接口是類或組件用來(lái)為其他的類和組件提供特定服務(wù)的 一組操作的集合,換句話說(shuō),接口描述了類或組件的對(duì)一組操作的集合,換句話說(shuō),接口描述了類或組件的

12、對(duì) 外的、可見(jiàn)的動(dòng)作。外的、可見(jiàn)的動(dòng)作。 協(xié)作定義了交互的操作,是一些角色和其他元素一起工協(xié)作定義了交互的操作,是一些角色和其他元素一起工 作,提供一些合作的動(dòng)作。作,提供一些合作的動(dòng)作。 用例定義了系統(tǒng)執(zhí)行的一組操作,即描述了系統(tǒng)的功能用例定義了系統(tǒng)執(zhí)行的一組操作,即描述了系統(tǒng)的功能 需求,對(duì)特定的用戶產(chǎn)生可以觀察的結(jié)果。需求,對(duì)特定的用戶產(chǎn)生可以觀察的結(jié)果。 活動(dòng)類是對(duì)擁有線程并可發(fā)起控制活動(dòng)的對(duì)象(往往稱活動(dòng)類是對(duì)擁有線程并可發(fā)起控制活動(dòng)的對(duì)象(往往稱 為主動(dòng)對(duì)象)的抽象。為主動(dòng)對(duì)象)的抽象。 組件是實(shí)實(shí)在在地駐留在計(jì)算機(jī)系統(tǒng)中的工作單元。一組件是實(shí)實(shí)在在地駐留在計(jì)算機(jī)系統(tǒng)中的工作單元。

13、一 般指軟件組件般指軟件組件,如:可執(zhí)行程序(如:可執(zhí)行程序(EXE)、動(dòng)態(tài)鏈接庫(kù))、動(dòng)態(tài)鏈接庫(kù) (DLL)和源程序)和源程序 等。等。 節(jié)點(diǎn)就是計(jì)算機(jī)資源,包括帶處理器的計(jì)算機(jī)或其他硬節(jié)點(diǎn)就是計(jì)算機(jī)資源,包括帶處理器的計(jì)算機(jī)或其他硬 件設(shè)備。如一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器等。件設(shè)備。如一臺(tái)數(shù)據(jù)庫(kù)服務(wù)器等。 2)行為元素 行為元素是行為元素是UMLUML的動(dòng)態(tài)部分,它們是模型中的動(dòng)的動(dòng)態(tài)部分,它們是模型中的動(dòng) 詞,代表了隨時(shí)間或空間的變化而變化的行為。詞,代表了隨時(shí)間或空間的變化而變化的行為。 行為元素主要有兩種:交互作用和狀態(tài)機(jī)。行為元素主要有兩種:交互作用和狀態(tài)機(jī)。 交互作用是一組對(duì)象之間為完成某一任

14、務(wù)(如實(shí)交互作用是一組對(duì)象之間為完成某一任務(wù)(如實(shí) 現(xiàn)某個(gè)操作)而進(jìn)行的一系列消息交換的行為現(xiàn)某個(gè)操作)而進(jìn)行的一系列消息交換的行為. 在在UML圖中,交互的消息通常畫成帶箭頭的直線。圖中,交互的消息通常畫成帶箭頭的直線。 狀態(tài)機(jī)是對(duì)象為響應(yīng)事件而經(jīng)歷的一系列狀態(tài)以狀態(tài)機(jī)是對(duì)象為響應(yīng)事件而經(jīng)歷的一系列狀態(tài)以 及對(duì)事件作出響應(yīng)的行為。包括狀態(tài)、躍遷及對(duì)事件作出響應(yīng)的行為。包括狀態(tài)、躍遷 、事、事 件等。件等。 display 交互 狀態(tài) Waiting 3)分組元素包(包(Package) 分組元素:在分組元素:在UMLUML中的作用是組織其他元素。中的作用是組織其他元素。分分 組元素只有一種,

15、稱為包。組元素只有一種,稱為包。 包是一種有組織地將一系列元素分組的包是一種有組織地將一系列元素分組的 機(jī)制。機(jī)制。 包 business rule 4)注釋元素注釋(注釋(note) 注釋元素:注釋元素: 是是UMLUML模型的解釋部分。這些注釋元素用來(lái)描述、模型的解釋部分。這些注釋元素用來(lái)描述、 說(shuō)明和標(biāo)注模型中的任何元素。只有一種注釋說(shuō)明和標(biāo)注模型中的任何元素。只有一種注釋 元素,稱為注解元素,稱為注解 。 注釋 return copy of self 1.3.2 UML的圖 UML的圖有的圖有9種,可分為種,可分為5類:類: 第第1類,用例圖(類,用例圖(Use Case Diagra

16、m),從用戶角度描述系統(tǒng)功),從用戶角度描述系統(tǒng)功 能,并指出各功能的操作者能,并指出各功能的操作者 UML的圖 第第2類,靜態(tài)圖(類,靜態(tài)圖(Static diagram),包括),包括 類圖、對(duì)象圖和包圖:類圖、對(duì)象圖和包圖: 類圖:類圖用于定義系統(tǒng)中的類。包括描述類類圖:類圖用于定義系統(tǒng)中的類。包括描述類 之間的關(guān)系(如:關(guān)聯(lián)、依賴、泛化、聚合等)之間的關(guān)系(如:關(guān)聯(lián)、依賴、泛化、聚合等) 以及類的內(nèi)部結(jié)構(gòu)以及類的內(nèi)部結(jié)構(gòu)( (即類的屬性和操作即類的屬性和操作) )。類圖。類圖 描述的是系統(tǒng)中類的靜態(tài)結(jié)構(gòu)描述的是系統(tǒng)中類的靜態(tài)結(jié)構(gòu), ,在系統(tǒng)的整個(gè)在系統(tǒng)的整個(gè) 生命周期都是有效的。生命周

17、期都是有效的。 對(duì)象圖:是類圖的實(shí)例,顯示一組對(duì)象以及它對(duì)象圖:是類圖的實(shí)例,顯示一組對(duì)象以及它 們的關(guān)系。對(duì)象圖只在系統(tǒng)的某一時(shí)間段存在。們的關(guān)系。對(duì)象圖只在系統(tǒng)的某一時(shí)間段存在。 包圖包圖: :用于描述系統(tǒng)的分層結(jié)構(gòu),包中內(nèi)容可用于描述系統(tǒng)的分層結(jié)構(gòu),包中內(nèi)容可 以是類,也可以是包。包圖主要表示包與類以是類,也可以是包。包圖主要表示包與類, , 或包與包之間的關(guān)系。或包與包之間的關(guān)系。 UML的圖 第第3類,行為圖(類,行為圖(Behavior diagram),描),描 述系統(tǒng)的動(dòng)態(tài)模型和對(duì)象間的交互關(guān)系,包述系統(tǒng)的動(dòng)態(tài)模型和對(duì)象間的交互關(guān)系,包 括狀態(tài)圖和活動(dòng)圖:括狀態(tài)圖和活動(dòng)圖: -

18、 -狀態(tài)圖描述了對(duì)象在其生命周期中所有可能的狀狀態(tài)圖描述了對(duì)象在其生命周期中所有可能的狀 態(tài)以及事件發(fā)生時(shí)狀態(tài)的轉(zhuǎn)移。通常狀態(tài)圖是對(duì)態(tài)以及事件發(fā)生時(shí)狀態(tài)的轉(zhuǎn)移。通常狀態(tài)圖是對(duì) 類圖的補(bǔ)充。類圖的補(bǔ)充。 - -活動(dòng)圖描述了為滿足用例要求所要進(jìn)行的各種活活動(dòng)圖描述了為滿足用例要求所要進(jìn)行的各種活 動(dòng)的執(zhí)行流程,以及活動(dòng)間的約束關(guān)系。動(dòng)的執(zhí)行流程,以及活動(dòng)間的約束關(guān)系。 UML的圖 第第4類,交互圖(類,交互圖(Interactive diagram),), 描述對(duì)象間的交互關(guān)系,包括時(shí)序圖和描述對(duì)象間的交互關(guān)系,包括時(shí)序圖和 協(xié)作圖:協(xié)作圖: - -時(shí)序圖描述了對(duì)象之間的動(dòng)態(tài)合作關(guān)系,強(qiáng)時(shí)序圖描述

19、了對(duì)象之間的動(dòng)態(tài)合作關(guān)系,強(qiáng) 調(diào)對(duì)象之間消息發(fā)送的時(shí)間順序。調(diào)對(duì)象之間消息發(fā)送的時(shí)間順序。 - -協(xié)作圖描述了一組相互合作的對(duì)象與對(duì)象之協(xié)作圖描述了一組相互合作的對(duì)象與對(duì)象之 間的協(xié)作關(guān)系,強(qiáng)調(diào)對(duì)象相互間的通信關(guān)系。間的協(xié)作關(guān)系,強(qiáng)調(diào)對(duì)象相互間的通信關(guān)系。 UML的圖 第第5類,實(shí)現(xiàn)圖(類,實(shí)現(xiàn)圖(Implementation diagram),描述代碼組件之間的依賴),描述代碼組件之間的依賴 關(guān)系,定義系統(tǒng)中軟硬件的物理體系結(jié)關(guān)系,定義系統(tǒng)中軟硬件的物理體系結(jié) 構(gòu)。包括組件圖和配置圖:構(gòu)。包括組件圖和配置圖: - -組件圖描述了軟件組件的物理結(jié)構(gòu)以及各組組件圖描述了軟件組件的物理結(jié)構(gòu)以及各組

20、 件之間的依賴關(guān)系。一個(gè)組件可能是源代碼組件之間的依賴關(guān)系。一個(gè)組件可能是源代碼組 件或可執(zhí)行組件。件或可執(zhí)行組件。 - -配置圖(也稱部署圖)描述了軟件在硬件環(huán)配置圖(也稱部署圖)描述了軟件在硬件環(huán) 境中的配置關(guān)系。配置圖不但顯示實(shí)際的計(jì)算境中的配置關(guān)系。配置圖不但顯示實(shí)際的計(jì)算 機(jī)和設(shè)備(用節(jié)點(diǎn)表示)以及它們之間的關(guān)系,機(jī)和設(shè)備(用節(jié)點(diǎn)表示)以及它們之間的關(guān)系, 還描述了連接的類型及組件之間的依賴性。還描述了連接的類型及組件之間的依賴性。 從應(yīng)用的角度看,當(dāng)采用面向?qū)ο蟮姆椒ㄔO(shè)計(jì)系統(tǒng)時(shí),主要從應(yīng)用的角度看,當(dāng)采用面向?qū)ο蟮姆椒ㄔO(shè)計(jì)系統(tǒng)時(shí),主要 分為三步:分為三步: 1、描述需求;、描述需求

21、; 2、根據(jù)需求建立系統(tǒng)的靜態(tài)模型,設(shè)計(jì)系統(tǒng)的結(jié)構(gòu);、根據(jù)需求建立系統(tǒng)的靜態(tài)模型,設(shè)計(jì)系統(tǒng)的結(jié)構(gòu); 3、描述系統(tǒng)的行為。、描述系統(tǒng)的行為。 其中第其中第1步和第步和第2步中所建立的模型都是靜態(tài)的,包括用例圖、步中所建立的模型都是靜態(tài)的,包括用例圖、 類圖類圖(包含包包含包)、對(duì)象圖、組件圖和配置圖等五種圖形,屬于、對(duì)象圖、組件圖和配置圖等五種圖形,屬于 UML的靜態(tài)建模機(jī)制;的靜態(tài)建模機(jī)制; 第第3步中所建立的模型或者可以執(zhí)行,或者表示執(zhí)行時(shí)的時(shí)序步中所建立的模型或者可以執(zhí)行,或者表示執(zhí)行時(shí)的時(shí)序 狀態(tài)或交互關(guān)系。包括狀態(tài)圖、活動(dòng)圖、時(shí)序圖和協(xié)作圖等狀態(tài)或交互關(guān)系。包括狀態(tài)圖、活動(dòng)圖、時(shí)序圖和

22、協(xié)作圖等 四種圖形。這些圖構(gòu)成了四種圖形。這些圖構(gòu)成了UML的動(dòng)態(tài)建模機(jī)制;的動(dòng)態(tài)建模機(jī)制; 因此因此,標(biāo)準(zhǔn)建模語(yǔ)言標(biāo)準(zhǔn)建模語(yǔ)言UML的主要內(nèi)容也可以歸納為靜的主要內(nèi)容也可以歸納為靜 態(tài)建模機(jī)制和動(dòng)態(tài)建模機(jī)制兩大類。態(tài)建模機(jī)制和動(dòng)態(tài)建模機(jī)制兩大類。 1.4 對(duì)面向?qū)ο蟮睦斫?對(duì)象對(duì)象 世界上任何事物都可以看成是對(duì)象。一個(gè)對(duì)象代表了一世界上任何事物都可以看成是對(duì)象。一個(gè)對(duì)象代表了一 個(gè)現(xiàn)實(shí)的或虛構(gòu)的實(shí)體。對(duì)象可以是具體有形的物體,個(gè)現(xiàn)實(shí)的或虛構(gòu)的實(shí)體。對(duì)象可以是具體有形的物體, 如汽車、人、房屋等,也可以是無(wú)形的概念,化學(xué)過(guò)程、如汽車、人、房屋等,也可以是無(wú)形的概念,化學(xué)過(guò)程、 生產(chǎn)計(jì)劃、國(guó)家等

23、。生產(chǎn)計(jì)劃、國(guó)家等。 對(duì)象具有其自身的結(jié)構(gòu),其結(jié)構(gòu)包括屬性和行為。對(duì)象對(duì)象具有其自身的結(jié)構(gòu),其結(jié)構(gòu)包括屬性和行為。對(duì)象 的行為是指它能執(zhí)行的操作。的行為是指它能執(zhí)行的操作。 例如:汽車都有一些共同的屬性:品牌、型號(hào)和載重等。例如:汽車都有一些共同的屬性:品牌、型號(hào)和載重等。 它們都有一些共同的行為:加速、減速、載客和運(yùn)貨。它們都有一些共同的行為:加速、減速、載客和運(yùn)貨。 面向?qū)ο蟮幕靖拍?類類 類是一組具有相同特性和行為的對(duì)象的集合。類是一組具有相同特性和行為的對(duì)象的集合。 共同的特性通過(guò)屬性表現(xiàn)出來(lái)共同的特性通過(guò)屬性表現(xiàn)出來(lái) (數(shù)據(jù)數(shù)據(jù)) 共同的行為通過(guò)操作表現(xiàn)出來(lái)共同的行為通過(guò)操作表現(xiàn)出

24、來(lái) (功能功能) 類和對(duì)象的關(guān)系類和對(duì)象的關(guān)系 -類是對(duì)象的抽象,對(duì)象是類的實(shí)例。類是對(duì)象的抽象,對(duì)象是類的實(shí)例。 例如:某輛汽車是汽車類的實(shí)例。例如:某輛汽車是汽車類的實(shí)例。 - -類是靜態(tài)的;類是靜態(tài)的; 它們的存在、語(yǔ)義和關(guān)系在程序執(zhí)行前就已它們的存在、語(yǔ)義和關(guān)系在程序執(zhí)行前就已 經(jīng)定義好了。經(jīng)定義好了。 - -對(duì)象是動(dòng)態(tài)的;對(duì)象是動(dòng)態(tài)的; 它們?cè)诔绦驁?zhí)行時(shí)可以被建立和刪除。它們?cè)诔绦驁?zhí)行時(shí)可以被建立和刪除。 類(也叫種類)主要起到分類的作用。類(也叫種類)主要起到分類的作用。 面向?qū)ο蟮幕靖拍?抽象 抽象是一種從一般的觀點(diǎn)看待事物的方法,它抽象是一種從一般的觀點(diǎn)看待事物的方法,它 要

25、求程序員集中于事物的本質(zhì)特征,而不是具要求程序員集中于事物的本質(zhì)特征,而不是具 體細(xì)節(jié)或具體實(shí)現(xiàn)。體細(xì)節(jié)或具體實(shí)現(xiàn)。 抽象的含義是過(guò)濾掉對(duì)象中與當(dāng)前開(kāi)發(fā)無(wú)關(guān)的抽象的含義是過(guò)濾掉對(duì)象中與當(dāng)前開(kāi)發(fā)無(wú)關(guān)的 特性,只剩下所需要的屬性和行為。特性,只剩下所需要的屬性和行為。 一個(gè)類是一組對(duì)象的抽象。一個(gè)類是一組對(duì)象的抽象。 面向?qū)ο蟮幕靖拍?繼承 繼承是指一個(gè)類直接從另一個(gè)類中得到其屬性和方繼承是指一個(gè)類直接從另一個(gè)類中得到其屬性和方 法。例如:汽車類、飛機(jī)類是交通工具類的子類。法。例如:汽車類、飛機(jī)類是交通工具類的子類。 一個(gè)類的子類可以是另一個(gè)類的超類。一個(gè)類的子類可以是另一個(gè)類的超類。 例如:汽

26、車類又是轎車、卡車、賽車類的父類。例如:汽車類又是轎車、卡車、賽車類的父類。 在對(duì)現(xiàn)實(shí)世界建立系統(tǒng)模型時(shí),可以根據(jù)事物的共在對(duì)現(xiàn)實(shí)世界建立系統(tǒng)模型時(shí),可以根據(jù)事物的共 性抽象出一批基本的對(duì)象類(基類或超類),在此性抽象出一批基本的對(duì)象類(基類或超類),在此 基礎(chǔ)上再根據(jù)事物的個(gè)性抽象出新的對(duì)象類,它們基礎(chǔ)上再根據(jù)事物的個(gè)性抽象出新的對(duì)象類,它們 既有超類的全部屬性和行為,又有自己獨(dú)特的屬性既有超類的全部屬性和行為,又有自己獨(dú)特的屬性 和行為。這些新的對(duì)象類成為基類的子類(或派生和行為。這些新的對(duì)象類成為基類的子類(或派生 類)。例如:類)。例如:“學(xué)生學(xué)生”是基類,是基類,“本科生本科生”“”

27、“研究研究 生生”是它的兩個(gè)子類。是它的兩個(gè)子類。 繼承可以提高軟件的可重用性。繼承可以提高軟件的可重用性。 面向?qū)ο蟮幕靖拍?多態(tài)多態(tài) 多態(tài)性就是多種表現(xiàn),即多態(tài)性就是多種表現(xiàn),即“一個(gè)對(duì)外接口,一個(gè)對(duì)外接口, 多個(gè)內(nèi)在實(shí)現(xiàn)方法。多個(gè)內(nèi)在實(shí)現(xiàn)方法。 不同的類有時(shí)具有相同名稱的操作。不同的類有時(shí)具有相同名稱的操作。 如:如: “打開(kāi)打開(kāi)”操作,可以是操作,可以是 “打開(kāi)一扇門打開(kāi)一扇門” “打開(kāi)一個(gè)銀行帳號(hào)打開(kāi)一個(gè)銀行帳號(hào)” “打開(kāi)一本書(shū)打開(kāi)一本書(shū)” 等,等, 雖然都是雖然都是“打開(kāi)打開(kāi)”操作,但執(zhí)行的是不同的行為動(dòng)操作,但執(zhí)行的是不同的行為動(dòng) 作。作。 如:接口,不同的類實(shí)現(xiàn)同一個(gè)接口時(shí),

28、可以有不如:接口,不同的類實(shí)現(xiàn)同一個(gè)接口時(shí),可以有不 同的實(shí)現(xiàn)方法。同的實(shí)現(xiàn)方法。 面向?qū)ο蟮幕靖拍?封裝封裝 將屬性和操作包裝成一個(gè)單元,使得對(duì)狀態(tài)的訪將屬性和操作包裝成一個(gè)單元,使得對(duì)狀態(tài)的訪 問(wèn)和修改只能通過(guò)封裝提供的接口進(jìn)行。問(wèn)和修改只能通過(guò)封裝提供的接口進(jìn)行。 封裝的實(shí)質(zhì)是當(dāng)一個(gè)對(duì)象執(zhí)行自己的操作時(shí),它封裝的實(shí)質(zhì)是當(dāng)一個(gè)對(duì)象執(zhí)行自己的操作時(shí),它 對(duì)外界隱藏了操作的細(xì)節(jié)。對(duì)外界隱藏了操作的細(xì)節(jié)。 對(duì)于對(duì)象的外界而言,只需要知道對(duì)象所表現(xiàn)對(duì)于對(duì)象的外界而言,只需要知道對(duì)象所表現(xiàn) 的外部行為,不必了解對(duì)象行為的內(nèi)部細(xì)節(jié)。的外部行為,不必了解對(duì)象行為的內(nèi)部細(xì)節(jié)。 如:電視機(jī)。如:電視機(jī)。

29、面向?qū)ο蟮幕靖拍?消息消息 對(duì)象之間的協(xié)作是通過(guò)相互發(fā)送消息來(lái)完成的。對(duì)象之間的協(xié)作是通過(guò)相互發(fā)送消息來(lái)完成的。 一個(gè)對(duì)象發(fā)送一個(gè)操作消息給另一個(gè)對(duì)象,接一個(gè)對(duì)象發(fā)送一個(gè)操作消息給另一個(gè)對(duì)象,接 收消息的對(duì)象就執(zhí)行這個(gè)操作,并把操作的結(jié)收消息的對(duì)象就執(zhí)行這個(gè)操作,并把操作的結(jié) 果返回給請(qǐng)求服務(wù)的對(duì)象。果返回給請(qǐng)求服務(wù)的對(duì)象。 關(guān)聯(lián)關(guān)聯(lián) 對(duì)象之間通常以某種方式發(fā)生聯(lián)系,這種聯(lián)系就對(duì)象之間通常以某種方式發(fā)生聯(lián)系,這種聯(lián)系就 叫關(guān)聯(lián)。叫關(guān)聯(lián)。 單向關(guān)聯(lián)單向關(guān)聯(lián):兩個(gè)類是相關(guān)的,但是只有一個(gè)兩個(gè)類是相關(guān)的,但是只有一個(gè) 類知道這種聯(lián)系的存在類知道這種聯(lián)系的存在,如開(kāi)車;,如開(kāi)車; 雙向關(guān)聯(lián)雙向關(guān)聯(lián):兩個(gè)類是相關(guān)的,兩個(gè)類是相關(guān)的,并且并且兩個(gè)兩個(gè)都都類類 知道這種聯(lián)系的存在知道這種聯(lián)系的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論