當前位置首頁 > 計算機 > UML理論/建模
搜柄,搜必應! 快速導航 | 使用教程

[小學教育]UML01-OOA概念ppt課件

文檔格式:PPT| 32 頁|大小 747.44KB|積分 20|2024-11-11 發(fā)布|文檔ID:251911946
第1頁
第2頁
第3頁
下載文檔到電腦,查找使用更方便 還剩頁未讀,繼續(xù)閱讀>>
1 / 32
此文檔下載收益歸作者所有 下載文檔
  • 版權提示
  • 文本預覽
  • 常見問題
  • Click to edit Master title style,Click to edit Master text stylesgood1,Second levelgood2,Third levelgood3,Fourth levelgood4,Fifth levelgood5,版權所有:理學院,UML,Java&UML,Java&UML,教程,授課:劉松華,版權所有:江西理工大學理學院,UML,Click to edit Master text stylesgood1,Second levelgood2,Third levelgood3,Fourth levelgood4,Fifth levelgood5,對象、,UML,和,Java,統(tǒng)一建模語言(,Unified Modeling Language,),對象、UML和Java統(tǒng)一建模語言(Unified Mode,課程目錄,面向對象分析和設計(,OOA/D,),課程目錄面向對象分析和設計(OOA/D),課程要點,課程目標:,介紹面向對象(,OO,)軟件開發(fā),介紹如何應用,UML,進行,OOAD,面向對象軟件開發(fā)包括了分析問題、設計解決方案、編碼實現及維護,將思維從僅僅讓程序運行轉變到面向對象地思考,我們需要一種用于,OOAD,的語言,這既是一種思考的工具,也是一種溝通的形式。

    因此,我們將在,OOAD,中應用,UML,分析(,analysis,),-,對問題和需求的調查研究,設計(,design,),-,滿足需求的概念上的解決方案,面向對象分析(,object-oriented analysis,),-,在問題域內發(fā)現和描述對象,面向對象設計(,object-oriented design,),-,如何定義軟件對象以及它們之間如何協作以實現需求,課程要點課程目標:,1.1,面向對象技術,核心是,對象,什么是對象?,哪些可以認為是對象?,為什么需要使用對象?,1.1 面向對象技術核心是對象,1.2,面向對象程序設計語言,現有語言:,C+,、,Objective C,、,Objective Pascal,、,Java,、,Ada,等,市場主流語言:,C+,和,Java,Java,的優(yōu)勢及問題:,WWW,和,Java,能讓小程序在任何有瀏覽器的計算機或操作系統(tǒng)上運行,不僅可以開發(fā),Web,小程序,而且可以在幾乎任何一種計算機上開發(fā),C+,的優(yōu)勢及問題:,源于,C,,傳承了在真實系統(tǒng)中完成真實任務的能力,兼容,C,現在擴展為一種巨大而復雜的語言,難以全面掌握并達成相當水平,1.2 面向對象程序設計語言現有語言:C+、Objecti,1.3,面向對象設計和,UML,在,UML,之前,有,OMT,、,Booch,等方法試圖將各種方法中使用的概念進行統(tǒng)一(無原作者參與失?。?/p>

    94,年,Rational,軟件公司合并兩種概念,設計了統(tǒng)一建模語言,UML,統(tǒng)一的內涵:,對于開發(fā)的要求具有無縫性(軟件開發(fā)生命期),適用于各種應用領域的建模,包括大型、復雜、實時、分布式、集中式或計算的、嵌入式的系統(tǒng),可應用于運行不同的編程實現語言和開發(fā)平臺,不是對開發(fā)過程細節(jié)進行描述的工具,在構建,UML,模型的過程中,特別注意揭示和表達各種概念之間的內在聯系并試圖用多種適用于已知和未知情況的辦法去把握建模中的概念,1.3 面向對象設計和UML在UML之前,有OMT、Booc,1.3,面向對象設計和,UML,UML,的目標:,使其成為一個通用的建模語言,可供所有建模者使用,使其能很好地支持設計工作,如封裝、分塊、記錄模型構造思路,使其能準確表達當前軟件開發(fā)中的熱點問題,比如大規(guī)模、分布、并發(fā)、方式和團體開發(fā)等,最終目標是盡可能簡單的同時能夠對實際需要簡歷的系統(tǒng)的各個方面建模,1.3 面向對象設計和UMLUML的目標:,附錄,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 Reuseable Object-Oriented Software,設計模式,可復用面向對象軟件的基礎,Agile Software Development-Principles,Patterns,and Practices,敏捷軟件開發(fā),原則、模式與實踐,Analysis Patterns:Reusable Object Models,分析模式,可復用對象模型,附錄4:建議閱讀參考書UML Distilled,對象的精髓,統(tǒng)一建模語言(,Unified Modeling Language,),對象的精髓統(tǒng)一建模語言(Unified Modeling L,2.1,基本概念,對象(,Object,),對象是封裝了狀態(tài)和行為的統(tǒng)一體,狀態(tài)主要表現為屬性和關聯,行為主要表現為操作,方法和狀態(tài)機,實例,MS12,醫(yī)療器械專用溫度傳感器,皮膚傳感器,生命監(jiān)護儀,培養(yǎng)箱,透析設備,呼吸器等醫(yī)療器械,結論,幾乎所有的東西都可以在軟件中通過建模成為對象,從對象的職責角度來思考對象比從它的屬性角度思考更有用,2.1 基本概念對象(Object),例子:,例子:,對象具有狀態(tài):,一個對象的狀態(tài)是這個對象可以存在的一個可能的環(huán)境,一個對象的狀態(tài)通常會發(fā)生多次改變,對象具有狀態(tài):一個對象的狀態(tài)是這個對象可以存在的一個可能的環(huán),對象具有行為:,行為決定了一個對象如何起作用以及和其它對象相互作用,對象的可見行為是被一系列所響應的消息模型化了,對象具有行為:行為決定了一個對象如何起作用以及和其它對象相互,每個對象都有自己的標識,每個對象有唯一的標識,即使它和另外一個對象具有完全一致的狀態(tài),每個對象都有自己的標識每個對象有唯一的標識,即使它和另外一個,2.1,基本概念,類(,Class,),類是一組對象的描述,這一組對象有共同的屬性和行為,類的定義描述了所有對象的屬性,也描述了實現該類對象的行為的類的方法,結論,類的描述包括對類的單個對象的狀態(tài)進行訪問和改變的方式,堅持以對象的觀點思考,2.1 基本概念類(Class),2.2,面向對象系統(tǒng),面向對象軟件系統(tǒng)具備,6,大特性:,利用對象進行抽象,抽象使得復雜的、真實世界的情況可以通過簡單的模型表示,如:對顏色的一種抽象是,RGB,模型,結論:什么是抽象?,定義一個觀點的邊界,區(qū)別于其它實體最本質的特征,2.2 面向對象系統(tǒng)面向對象軟件系統(tǒng)具備6大特性:,例子:抽象,例子:抽象,2.2,面向對象系統(tǒng),封裝的類,將抽象出來的狀態(tài)和行為結合在一個封裝的整體里,如:,Java,中通過類定義里面定義屬性和方法,強制封裝,結論:什么是封裝?,向調用者隱藏了實現,調用者依賴接口,2.2 面向對象系統(tǒng)封裝的類,2.2,面向對象系統(tǒng),通過消息進行通信,同一類的不同對象、不同類的對象之間需要通過發(fā)送消息給其它對象,傳遞消息或請求動作,互操作得到處理,2.2 面向對象系統(tǒng)通過消息進行通信,2.2,面向對象系統(tǒng),對象生命周期,對象在需要時被創(chuàng)建并初始化,繼而執(zhí)行功能,最后被銷毀,2.2 面向對象系統(tǒng)對象生命周期,2.2,面向對象系統(tǒng),類層次結構,關聯、聚合(組合)、繼承,2.2 面向對象系統(tǒng)類層次結構,2.2,面向對象系統(tǒng),多態(tài)性,特殊類實現與通用類有差別的行為,但是行為的名字相同,結論:什么是多態(tài)?,使用同一接口隱藏不同的實現,2.2 面向對象系統(tǒng)多態(tài)性,例子:多態(tài),例子:多態(tài),2.3 UML,類表示法,類的,UML,表示法是由三個水平部分組成的矩形。

    頂端部分用來填寫類的名字,中間部分用來填寫屬性,底端部分用來填寫類的操作(方法)2.3 UML類表示法類的UML表示法是由三個水平部分組成的,2.3 UML,類表示法,關聯通過類之間的連線表示,通常標注關聯名稱,關聯的名稱應該反映關系的用途,并且是一個動詞;該名稱可以忽略,尤其是使用角色名的時候應該盡量避免使用“具有”和“包含”這樣的名稱,因為它們不包含說明類之間具有什么關系的信息2.3 UML類表示法關聯通過類之間的連線表示,通常標注關聯,2.3 UML,類表示法,繼承的表示方法是一個有三角形箭頭的連線,箭頭指向更為通用的類(超類),2.3 UML類表示法繼承的表示方法是一個有三角形箭頭的連線,2.3 UML,類表示法,聚合的表示方法是一個有空心菱形的連線,菱形指向整體類,1,計算機,主機,顯示器,鍵盤,鼠標,一個空心菱形連接到聚集體(整體)一側的關聯路徑端,2.3 UML類表示法聚合的表示方法是一個有空心菱形的連線,,2.3 UML,類表示法,組成的表示方法是一個有實心菱形的連線,菱形指向整體類,組成是一種整體和部分所屬更強的聚合關系,每個部分只能屬于一個整體,沒有整體,部分也沒有存在的價值,1,1,4,桌 子,桌 腿,桌 面,一個實心菱形連接到關聯路徑端(在整體一側,),2.3 UML類表示法組成的表示方法是一個有實心菱形的連線,,2.3,結論:類層次結構,最簡單的層次結構是關聯(涉及相互獨立的類),相互不獨立的類之間有兩種層次結構:,第一種是將一個類作為另一個類的一部分,即整體,/,部分,整體,/,部分通用術語為聚合,在聚合中,部分一方的對象可以來去自由。

    如果對象是整體的不可或缺的部分,則稱為組合,第二種特征存在“是關系”,即泛化,/,特殊化,泛化,/,特殊化主要機制為繼承,Java,不支持多繼承,因此使用接口來替代,2.3 結論:類層次結構最簡單的層次結構是關聯(涉及相互獨立,實例,實例,實例說明,Book,和,Person,是兩個通用的超類,Book,由,Page,組成,組合關系表明書可以從一頁到任意頁,LibraryBook,類從,Book,類派生,可能有一些特殊屬性,Reader,是,Person,類的特殊情況,是要使用,Library,的,Person,Borrowing,類用于實現讀者和圖書館的書之間的,borrowing,關聯,虛線表示一個簡單的,LibraryBook,類和,Reader,類之間的雙向連結,用類實現關聯表示兩者之間的連結通過,Borrowing,類來管理,最后一個,LibraryBook,對象是一個,Book,對象,一個,Reader,對象是一個,Person,對象,能通過繼承的“是測試”,實例說明Book和Person是兩個通用的超類,2.4,其它面向對象概念,抽象類:不能實例化的類,具體類:完全指明其實現方式并能夠實例化的類,可見性:一個類看到和使用另一個類的資源的能力,公有可見性(,public,),私有可見性(,private,),保護可見性(,protected,),友類可見性(,friend,),2.4 其它面向對象概念抽象類:不能實例化的類,。

    點擊閱讀更多內容
    最新文檔
    傳統(tǒng)文化道德不是高懸的明月而是腳下的星光.pptx
    世界無煙日關注青少年成長健康無煙為成長護航.pptx
    五四青年節(jié)詩詞贊歌五四青年自強不息.pptx
    XX學校班主任培訓用心管理慧做班主任.pptx
    拒絕熬夜健康養(yǎng)生規(guī)律作息遠離亞健康.pptx
    兒童成長手冊時光里的童真印記.pptx
    幼兒園夏季傳染病預防指南預見夏天健康童行夏季傳染病預防科普.pptx
    高中生心理健康教育主題班會快樂學習高效學習正視壓力學會減壓.pptx
    員工職業(yè)道德與職業(yè)素養(yǎng)培訓遵守職業(yè)道德提高職業(yè)修養(yǎng).pptx
    2025職業(yè)病防治法宣傳周健康守護職防同行.pptx
    XX幼兒園防災減災安全教育臨災不亂安全童行學會保護自己.pptx
    在2025年縣教育工作大會暨高考備考工作推進會上的講話發(fā)言材料.docx
    在2025年縣全面從嚴治黨和黨風廉政會議上的講話發(fā)言材料.docx
    在2025年全市慶?!拔逡弧濒邉趧幽7侗碚么髸系闹v話發(fā)言材料多篇.docx
    2025年稅務局青年代表在五四青年座談會上的發(fā)言材料3篇.docx
    在2025年市委全體會議上的主持講話發(fā)言材料.docx
    2025年黨風廉政建設工作要點材料.docx
    在2025年全市青年干部慶祝五四青年節(jié)大會上的講話發(fā)言材料多篇.docx
    在入黨積極分子培訓班上的講話發(fā)言材料.docx
    縣文旅局黨組書記在五一假期及夏季旅游安全生產工作部署會議上的講話發(fā)言材料.docx
    賣家[上傳人]:文海999
    資質:實名認證