第5章uml包圖

第5章uml包圖

ID:21855384

大小:972.00 KB

頁數(shù):23頁

時間:2018-10-20

第5章uml包圖_第1頁
第5章uml包圖_第2頁
第5章uml包圖_第3頁
第5章uml包圖_第4頁
第5章uml包圖_第5頁
資源描述:

《第5章uml包圖》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、第5章包圖包圖就是用來描述包及其關(guān)系的圖,我們常用包圖來描述系統(tǒng)、子系統(tǒng)的宏觀組成和結(jié)構(gòu)。25.1什么是包包是用于分組的符號,常用來對一組相同的UML元素進行分組存放和管理。UML中的包相當于文件系統(tǒng)中的文件夾,UML中的一個包直接對應于Java中的一個包。在Java中,一個包可能含有其他包、類或者同時含有這兩者。1.包的示例2.包中的元素3.包的作用35.2什么是包圖1.包圖示例2.包圖的作用3.包圖中的元素45.3包的表示在UML中用文件夾符號來表示一個包。即一個包由兩個矩形組成,上面是一個小矩形,下面是一個大矩形。圖5-3就是最常見的包表示法。圖中包

2、的名稱是UI,包中包含一個類Page。55.3.1包命名1.包名稱的位置2.包名稱的書寫格式包名稱的書寫格式有兩種,即簡單名和全名。65.3.2包中的元素1.包中元素是類和接口2.包中的元素是用例3.包中元素是包4.包中元素的可見性5.訪問權(quán)限75.3.3用構(gòu)造型表示包一個包的具體新特征有很多,為了表示包的新特性,UML提供了5種構(gòu)造型來描述包的新特征。下面分別說明這5種構(gòu)造型的語義。(1)<>符號:表示包代表一個系統(tǒng)。(2)<>符號:表示包代表某個子系統(tǒng)。(3)<>符號:表示包是由其他包構(gòu)成的一個視圖

3、。(4)<>符號:表示包是一個代理包,該代理包為其他包提供公共服務。(5)<>符號:表示包代表一個框架。85.4包圖中的關(guān)系包圖中包間的關(guān)系有兩種,即依賴關(guān)系和泛化關(guān)系。95.4.1依賴關(guān)系1.<>關(guān)系2.<>關(guān)系105.4.1依賴關(guān)系3.<>關(guān)系4.<>關(guān)系115.4.2泛化關(guān)系包間的泛化關(guān)系類似于類間的泛化關(guān)系,子包繼承了父包的公共元素和保護元素,并可以增加新的元素。在使用父包的地方,可以用子包代替。如圖5-13所示,父包是GUI,它有兩個子包,分別是G1和G2。

4、125.5包的傳遞性包間的傳遞性是指:如果包X與包Y存在關(guān)系,包Y與包Z存在關(guān)系,那么,包X與包Z也存在關(guān)系。<>依賴是可傳遞的,<>依賴是不可傳遞的。當客戶包與提供者包之間是<>依賴時,提供者包中的公共元素就成為客戶包中的公共元素,這些公共元素在包外同樣是可以訪問的。如圖5-14所示,Z包中的公共元素成為Y包的公共元素,同時,Y包中的公共元素成為X包中的公共元素,因此,Z包中的公共元素能被X包訪問。所以,X、Y、Z包間的<>關(guān)系存在傳遞性。135.5包的傳遞性當客戶包與提供者包之間是<

5、cess>>依賴時,提供者包中的公共元素就成為客戶包中的私有元素,這些私有元素在包外是不可以訪問的。如圖5-15所示,Z包中的公共元素成為Y包的私有元素,而X包只能訪問Y包中的公共元素,因此,X包不能訪問Z包中的公共元素。所以,X、Y、Z包間的<>關(guān)系不存在傳遞性。145.6創(chuàng)建包圖的方法繪制包圖的基本過程主要有以下3個步驟。(1)尋找包。(2)確定包之間的關(guān)系。(3)確定包內(nèi)元素的可見性?!白钚』g的耦合關(guān)系”的原則是:最大限度減少包之間的依賴,進行包封裝時,避免包之間的循環(huán)依賴;最小化每個包中public、protected元素的個數(shù)

6、,最大化每個包中private元素的個數(shù)。155.6.1標識候選包在分析階段,我們以對象模型和用例模型為依據(jù),把關(guān)系緊密的類分到同一個包中,把關(guān)系松散的類分到不同的包中。確定包的過程包含3個步驟:第一步,以類圖為依據(jù),尋找候選包;第二步,對候選包進行調(diào)整;第三步,消除包的循環(huán)依賴。標識候選包的原則如下。(1)把類圖中關(guān)系緊密的類放到一個包中。(2)在類層次結(jié)構(gòu)中,把同一層次中的類放在同一包中,不同層次中的類放在不同的包中。165.6.2調(diào)整候選包在已經(jīng)識別一組候選包后,減少包間依賴,最小化每個包中public、protected元素的個數(shù),最大化每個包中p

7、rivate元素的個數(shù)。做法如下。(1)在包間移動類。(2)添加包、分解包、合并包或刪除包。通常,在分析階段,將類封裝為包模型時,應該盡量使包模型簡單。起初,將類圖轉(zhuǎn)換為包圖時,不需考慮包間的泛化和依賴關(guān)系,僅當使用諸如包泛化和依賴關(guān)系能簡化包模型時,才使用這些包整理技術(shù)。除了保持簡單,還應該避免嵌套包。包的嵌套結(jié)構(gòu)越深,模型變得越難理解。我們曾見過非常深層的嵌套包,而每個包僅包含一個或兩個類。這些模型更像是標準的、自上而下的功能分解,而不是包模型。作為經(jīng)驗法則,希望每個包具有4~10個分析類。然而,對于所有的經(jīng)驗法則,卻存在例外,如果打破某個法則使得模型

8、更加清晰,就采用這個法則。有時,必須引入只帶有一個或者兩個類的包,

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。