![[小學教育]UML01-OOA概念ppt課件_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/ee2b335f-f552-4387-9a95-87fc6fedb70b/ee2b335f-f552-4387-9a95-87fc6fedb70b1.gif)
![[小學教育]UML01-OOA概念ppt課件_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/ee2b335f-f552-4387-9a95-87fc6fedb70b/ee2b335f-f552-4387-9a95-87fc6fedb70b2.gif)
![[小學教育]UML01-OOA概念ppt課件_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/ee2b335f-f552-4387-9a95-87fc6fedb70b/ee2b335f-f552-4387-9a95-87fc6fedb70b3.gif)
![[小學教育]UML01-OOA概念ppt課件_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/ee2b335f-f552-4387-9a95-87fc6fedb70b/ee2b335f-f552-4387-9a95-87fc6fedb70b4.gif)
![[小學教育]UML01-OOA概念ppt課件_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/13/ee2b335f-f552-4387-9a95-87fc6fedb70b/ee2b335f-f552-4387-9a95-87fc6fedb70b5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、對象、UML和Java統(tǒng)一建模語言Unified Modeling Language 課程目錄面向?qū)ο蠓治龊驮O(shè)計OOA/D課程要點課程目的:介紹面向?qū)ο驩O軟件開發(fā)介紹如何應用UML進展OOAD面向?qū)ο筌浖_發(fā)包括了分析問題、設(shè)計解決方案、編碼實現(xiàn)及維護將思維從僅僅讓程序運行轉(zhuǎn)變到面向?qū)ο蟮乜紤]我們需要一種用于OOAD的語言,這既是一種考慮的工具,也是一種溝通的形式。因此,我們將在OOAD中應用UML分析analysis - 對問題和需求的調(diào)查研究設(shè)計design- 滿足需求的概念上的解決方案面向?qū)ο蠓治鰋bject-oriented analysis - 在問題域內(nèi)發(fā)現(xiàn)和描繪對象面向?qū)ο笤O(shè)計
2、object-oriented design- 如何定義軟件對象以及它們之間如何協(xié)作以實現(xiàn)需求1.1 面向?qū)ο蠹夹g(shù)核心是對象對象什么是對象?哪些可以認為是對象?為什么需要使用對象?1.2 面向?qū)ο蟪绦蛟O(shè)計語言現(xiàn)有語言:C+、Objective C、Objective Pascal、Java、Ada等市場主流語言:C+和JavaJava的優(yōu)勢及問題:WWW和Java能讓小程序在任何有閱讀器的計算機或操作系統(tǒng)上運行不僅可以開發(fā)Web小程序,而且可以在幾乎任何一種計算機上開發(fā)C+的優(yōu)勢及問題:源于C,傳承了在真實系統(tǒng)中完成真實任務的才能,兼容C如今擴展為一種宏大而復雜的語言,難以全面掌握并達成相當程
3、度1.3 面向?qū)ο笤O(shè)計和UML在UML之前,有OMT、Booch等方法試圖將各種方法中使用的概念進展統(tǒng)一無原作者參與失敗。94年Rational軟件公司合并兩種概念,設(shè)計了統(tǒng)一建模語言UML統(tǒng)一的內(nèi)涵:對于開發(fā)的要求具有無縫性軟件開發(fā)生命期適用于各種應用領(lǐng)域的建模,包括大型、復雜、實時、分布式、集中式或計算的、嵌入式的系統(tǒng)可應用于運行不同的編程實現(xiàn)語言和開發(fā)平臺不是對開發(fā)過程細節(jié)進展描繪的工具在構(gòu)建UML模型的過程中,特別注意提醒和表達各種概念之間的內(nèi)在聯(lián)絡并試圖用多種適用于和未知情況的方法去把握建模中的概念1.3 面向?qū)ο笤O(shè)計和UMLUML的目的:使其成為一個通用的建模語言,可供所有建模者使
4、用使其能很好地支持設(shè)計工作,如封裝、分塊、記錄模型構(gòu)造思路使其能準確表達當前軟件開發(fā)中的熱點問題,比方大規(guī)模、分布、并發(fā)、方式和團體開發(fā)等最終目的是盡可能簡單的同時可以對實際需要簡歷的系統(tǒng)的各個方面建模附錄4:建議閱讀參考書?UML Distilled?UML精化?Applying UML and Patterns?UML與形式應用?The Unified Modeling Language User Guide?UML用戶指南?The Unified Modeling Language Reference Manual?UML參考手冊?Design Patterns: Elements of
5、 Reuseable Object-Oriented Software?設(shè)計形式 可復用面向?qū)ο筌浖母?Agile Software Development - Principles, Patterns, and Practices?敏捷軟件開發(fā) 原那么、形式與理論?Analysis Patterns: Reusable Object Models?分析形式 可復用對象模型對象的精華統(tǒng)一建模語言Unified Modeling Language 2.1 根本概念對象Object對象是封裝了狀態(tài)和行為的統(tǒng)一體狀態(tài)主要表現(xiàn)為屬性和關(guān)聯(lián)行為主要表現(xiàn)為操作,方法和狀態(tài)機實例MS12醫(yī)療器械專用溫度
6、傳感器皮膚傳感器,生命監(jiān)護儀培養(yǎng)箱,透析設(shè)備呼吸器等醫(yī)療器械結(jié)論幾乎所有的東西都可以在軟件中通過建模成為對象從對象的職責角度來考慮對象比從它的屬性角度考慮更有用例子:對象具有狀態(tài):l一個對象的狀態(tài)是這個對象可以存在的一個可能的環(huán)境l一個對象的狀態(tài)通常會發(fā)生屢次改變對象具有行為:l行為決定了一個對象如何起作用以及和其它對象互相作用l對象的可見行為是被一系列所響應的消息模型化了每個對象都有自己的標識l每個對象有唯一的標識,即使它和另外一個對象具有完全一致的狀態(tài)2.1 根本概念類Class類是一組對象的描繪,這一組對象有共同的屬性和行為類的定義描繪了所有對象的屬性,也描繪了實現(xiàn)該類對象的行為的類的方
7、法結(jié)論類的描繪包括對類的單個對象的狀態(tài)進展訪問和改變的方式堅持以對象的觀點考慮2.2 面向?qū)ο笙到y(tǒng)面向?qū)ο筌浖到y(tǒng)具備6大特性:利用對象進展抽象抽象使得復雜的、真實世界的情況可以通過簡單的模型表示如:對顏色的一種抽象是RGB模型結(jié)論:什么是抽象?定義一個觀點的邊界區(qū)別于其它實體最本質(zhì)的特征例子:抽象2.2 面向?qū)ο笙到y(tǒng)封裝的類將抽象出來的狀態(tài)和行為結(jié)合在一個封裝的整體里如:Java中通過類定義里面定義屬性和方法,強迫封裝結(jié)論:什么是封裝?向調(diào)用者隱藏了實現(xiàn),調(diào)用者依賴接口2.2 面向?qū)ο笙到y(tǒng)通過消息進展通信同一類的不同對象、不同類的對象之間需要通過發(fā)送消息給其它對象,傳遞消息或懇求動作,互操作
8、得到處理2.2 面向?qū)ο笙到y(tǒng)對象生命周期對象在需要時被創(chuàng)立并初始化,繼而執(zhí)行功能,最后被銷毀2.2 面向?qū)ο笙到y(tǒng)類層次構(gòu)造關(guān)聯(lián)、聚合組合、繼承2.2 面向?qū)ο笙到y(tǒng)多態(tài)性特殊類實現(xiàn)與通用類有差異的行為,但是行為的名字一樣結(jié)論:什么是多態(tài)?使用同一接口隱藏不同的實現(xiàn)例子:多態(tài)2.3 UML類表示法類的UML表示法是由三個程度部分組成的矩形。頂端部分用來填寫類的名字,中間部分用來填寫屬性,底端部分用來填寫類的操作方法。2.3 UML類表示法關(guān)聯(lián)通過類之間的連線表示,通常標注關(guān)聯(lián)名稱關(guān)聯(lián)的名稱應該反映關(guān)系的用處,并且是一個動詞;該名稱可以忽略,尤其是使用角色名的時候。應該盡量防止使用“具有和“包含這樣
9、的名稱,因為它們不包含說明類之間具有什么關(guān)系的信息。2.3 UML類表示法繼承的表示方法是一個有三角形箭頭的連線,箭頭指向更為通用的類超類2.3 UML類表示法聚合的表示方法是一個有空心菱形的連線,菱形指向整體類1計算機計算機主機主機顯示器顯示器鍵盤鍵盤鼠標鼠標一個空心菱形連接到聚一個空心菱形連接到聚集體(整體)一側(cè)的關(guān)集體(整體)一側(cè)的關(guān)聯(lián)路徑端聯(lián)路徑端 2.3 UML類表示法組成的表示方法是一個有實心菱形的連線,菱形指向整體類組成是一種整體和部分所屬更強的聚合關(guān)系,每組成是一種整體和部分所屬更強的聚合關(guān)系,每個部分只能屬于一個整體,沒有整體,部分也沒個部分只能屬于一個整體,沒有整體,部分也
10、沒有存在的價值有存在的價值114桌桌 子子桌桌 腿腿桌桌 面面一個實心菱形連接到關(guān)聯(lián)一個實心菱形連接到關(guān)聯(lián)路徑端(在整體一側(cè)路徑端(在整體一側(cè)) 2.3 結(jié)論:類層次構(gòu)造最簡單的層次構(gòu)造是關(guān)聯(lián)涉及互相獨立的類互相不獨立的類之間有兩種層次構(gòu)造:第一種是將一個類作為另一個類的一部分,即整體/部分整體/部分通用術(shù)語為聚合,在聚合中,部分一方的對象可以來去自由。假如對象是整體的不可或缺的部分,那么稱為組合第二種特征存在“是關(guān)系,即泛化/特殊化泛化/特殊化主要機制為繼承Java不支持多繼承,因此使用接口來替代實例實例說明Book和Person是兩個通用的超類Book由Page組成,組合關(guān)系說明書可以從一頁到任意頁LibraryBook類從Book類派生,可能有一些特殊屬性Reader是Person類的特殊情況,是要使用Library的PersonBorrowing類用于實現(xiàn)讀者和圖書館的書之間的borrowing關(guān)聯(lián),虛線表示一個簡單的LibraryBook類和Reader類之間的雙向連結(jié),用類實現(xiàn)關(guān)聯(lián)表示兩者之間的連結(jié)通過Borrowing類來管理最后一個Li
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國吸水口行業(yè)深度研究分析報告
- 2025-2030年中國燃氣灶內(nèi)環(huán)齒蓋行業(yè)深度研究分析報告
- 2024年全球及中國水果榨漿機行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 產(chǎn)品采購計劃表-產(chǎn)品采購需求及計劃
- 2024-2030全球石墨烯導熱泡棉行業(yè)調(diào)研及趨勢分析報告
- 基層法律服務所聘用協(xié)議合同7篇
- 2025年企業(yè)資質(zhì)策劃合作合同格式
- 2025年技術(shù)開發(fā)委托合同范本
- 2025年某農(nóng)場森林管護合同5篇
- 2025年光纖網(wǎng)絡布線合同范本
- GB∕T 17587.1-2017 滾珠絲杠副 第1部分:術(shù)語和符號
- 第4課動物朋友(一)(課件)蘇少版美術(shù)二年級下冊
- 用戶服務滿意度評價表
- [江西]20萬噸自來水廠工藝圖紙設(shè)計(附58頁設(shè)計方案)
- 土石壩設(shè)計畢業(yè)設(shè)計
- 【分享貼】2018AFP案例結(jié)業(yè)題目10:青年家庭限購政策下的公寓商鋪答案解析
- 插花構(gòu)圖二學習教案
- 三年級學生學情分析
- 產(chǎn)品安全符合性聲明
- 高中化學競賽-中級無機化學--金屬原子簇word版本
- 沖壓工藝與模具設(shè)計拉深
評論
0/150
提交評論