![第1章 UML與面向對象概述_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/25/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a0/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a01.gif)
![第1章 UML與面向對象概述_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/25/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a0/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a02.gif)
![第1章 UML與面向對象概述_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/25/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a0/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a03.gif)
![第1章 UML與面向對象概述_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/25/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a0/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a04.gif)
![第1章 UML與面向對象概述_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/25/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a0/dedfdb8d-3c7c-469b-b9b8-35e79af5b7a05.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、UML建模語言UML及面向對象分析及設計及面向對象分析及設計 主主 講講: 胡元發(fā)胡元發(fā) Email: UML建模語言 本課程采用平時成績(包括出勤考核,課堂發(fā)言本課程采用平時成績(包括出勤考核,課堂發(fā)言等)、實踐(實驗和課程設計)和理論考試相結等)、實踐(實驗和課程設計)和理論考試相結合的考核方法??傇u成績中平時成績占合的考核方法??傇u成績中平時成績占15%,實,實踐成績占踐成績占25%,期末考試占,期末考試占60%。課程設計要求。課程設計要求學生按小組完成項目設計,并以軟件驗收書面報學生按小組完成項目設計,并以軟件驗收書面報告的形式上交。告的形式上交。課程安排UML建模語言教科書:UML面
2、向對象設計與分析基礎教程,牛麗平等編著 ,清華大學出版社 2007UML建模語言第第1章章 UML與面向對象與面向對象 本章主要介紹什么是面向對象的分析方法和設計方法,面向對象分析的三層設計;然后介紹面向對象分析的工具和方法-UML,以及UML的主要構成Coad和Yourdon:面向對象=對象+類+繼承+通信UML建模語言1.1 面向對象開發(fā)1.1.1 不同的分析與設計方法 1.功能分解法(function decomposition) 以系統(tǒng)需要提供的功能為中心來組織系統(tǒng)。 首先定義各種功能,然后把功能分解為子功能,對較大的子功能進一 步分解,直到可給出明確的定義 設計功能/子功能所需要的數(shù)
3、據(jù)結構 定義功能/子功能之間的接口。 (作為一種早期的建模方法,沒有明確地區(qū)分分析與設計) 建模過程:層層進行功能分解UML建模語言1.1 面向對象開發(fā)1.1.1 不同的分析與設計方法 1.功能分解法(function decomposition) 功能分解法得到的系統(tǒng)模型(由模塊及其接口構成) 優(yōu)點與缺點: 直接地反映用戶的需求,所以工作很容易開始; 不能直接地映射問題域,很難檢驗結果的正確性; 對需求變化的適應能力很差; 局部的錯誤和修改很容易產生全局性的影響。 UML建模語言1.1 面向對象開發(fā)1.1.1 不同的分析與設計方法 2.結構化方法: 結構化分析(structured anal
4、ysis,SA) 結構化設計(structured design。SD) 結構化分析又稱數(shù)據(jù)流法,其基本策略是跟蹤數(shù)據(jù)流,即研究問題域中數(shù)據(jù)如何流動,以及在各個環(huán)節(jié)上進行何種處理,從而發(fā)現(xiàn)數(shù)據(jù)流和加工。得到的分析模型是數(shù)據(jù)流圖(DFD),主要模型元素是數(shù)據(jù)流、加工、文件及端點,外加處理說明和數(shù)據(jù)字典。數(shù)據(jù)流圖: UML建模語言1.1 面向對象開發(fā)1.1.1 不同的分析與設計方法 2.結構化方法: 結構化設計與功能分解法基本相同,基于模塊的概念建立設計模型,分為概要設計和詳細設計。 概要設計:確定系統(tǒng)中包含哪些模塊以及模塊之間的調用關系,得到模塊結構圖(MSD)。 詳細設計:描述每個模塊內部的數(shù)
5、據(jù)結構和操作流程。 結構化方法的優(yōu)缺點:優(yōu)點:強調研究問題域,并且有嚴格的法則。缺點:仍然是間接映射問題域;分析與設計的概念不一致,從分析到設計的過渡比較困難;數(shù)據(jù)流和加工的數(shù)量太多,引起分析文檔的膨脹。 UML建模語言1.1 面向對象開發(fā)1.1.1 不同的分析與設計方法 3.信息建模法(information modeling) 由實體-關系法(E-R方法)發(fā)展而來。 核心概念是實體和關系。實體描述問題域中的事物,關系描述事物之間在數(shù)據(jù)方面的聯(lián)系,都可以帶有屬性。 發(fā)展之后的方法也把實體稱作對象,并使用了類型和子類型的概念,作為實體(對象)的抽象描述。 E-R圖: UML建模語言1.1 面向
6、對象開發(fā)1.1.1 不同的分析與設計方法 3.信息建模法(information modeling) 信息模型:信息建模法已經(jīng)很接近面向對象方法,因此有的文獻也把它稱為一種面向對象方法,但有以下差別: 1) 強調的重點是信息建模和狀態(tài)建模,而不是對象建模 2) 實體中只有屬性沒有操作 3) 只有屬性的繼承,不正常操作的繼承 4) 沒有采用信息通訊 UML建模語言1.1 面向對象開發(fā)1.1.1 不同的分析與設計方法 4.面向對象方法 面向對象的分析(OOA)(做什么) 面向對象的設計(OOD)(怎么做) 面向對象的編程(OOP) 運用對象、類、繼承、封裝、聚合、關聯(lián)、消息、多態(tài)性等概念來構造系統(tǒng)
7、。 把問題域中的事物抽象為對象,作為系統(tǒng)的基本構成單位,其屬性和操作刻畫了事物的靜態(tài)特征和動態(tài)特征完整地刻畫了問題域中事物。 用類作為對象的抽象描述,建立它們之間的繼承、聚合、關聯(lián)、消息等關系如實地表達了問題域中事物之間的各種關系。 封裝、繼承、聚合、關聯(lián)、消息通訊等原則符合人類的日常思維使系統(tǒng)的復雜性得到控制。 不同的建模方法 體現(xiàn)于 從不同的概念出發(fā)認識問題域 用不同的概念進行系統(tǒng)構造UML建模語言1.1 面向對象開發(fā)1.1.1 不同的分析與設計方法系統(tǒng)對現(xiàn)實世界的映射方式不同UML建模語言1.1 面向對象開發(fā)不同的方法對同一應用實例(電話安裝業(yè)務系統(tǒng))的不同效果 結構化分析數(shù)據(jù)流和加工問
8、題: 不是直接映射問題域,與事物相關的數(shù)據(jù)和操作不是圍繞這些事物來組織的,而是分散在數(shù)據(jù)流和加工中;經(jīng)常發(fā)生信息膨脹模型中的多個數(shù)據(jù)里,實現(xiàn)中其實只是一項數(shù)據(jù);分析模型難以與設計模型及源程序對應。UML建模語言1.1 面向對象開發(fā) 面向對象方法對象及其關系UML建模語言1.1 面向對象開發(fā)OO包括包括OOA、OOD、OOP什么是什么是OOA 顧名思義,面向對象的分析(OOA),就是運用面向對象方法進行系統(tǒng)分析。 首先,OOA是分析,是軟件生存周期的一個階段,具有一般分析方法共同具有的內容、目標及策略; 但是,它強調運用面向對象方法進行分析,用面向對象的概念和表示法表達分析結果。 基本任務:運用
9、面向對象的概念對問題域進行分析,將問題域中與系統(tǒng)責任有關的事物抽象為系統(tǒng)中的對象,定義這些對象的屬性與操作,以及它們之間的各種關系。 最終目標:建立一個滿足用戶需求、直接映射問題域的OOA模型。UML建模語言1.1 面向對象開發(fā) 什么是什么是OOD 不同時期有不同內容及特點 早期(80年代末期之前)OOD的特點: 1) 不是基于OOA的 大多基于結構化分析結果(數(shù)據(jù)流圖) 2) 是OO編程方法的延伸 多數(shù)方法與編程語言無關,特別受Ada影響很大 3) 不是純OO的 對某些OO概念(如繼承)缺少支持,摻雜一些非OO概念(如數(shù)據(jù)流、包、模塊等) 4) 不是只針對軟件生存周期的設計階段 OOD中的“
10、D”指的是Design或Development,多少涉及分析問題(如識別問題域的對象),但很不徹底 早期的OOD可看作現(xiàn)今OOA&D方法的雛形 現(xiàn)今(90年代以后)OOD的特點: i. 以面向對象的分析為基礎,一般不依賴結構化分析。 ii. 與OOA方法共同構成一種OOA&D方法體系。OOA和OOD采用一致的概念與原則,但屬于軟件生存周期的不同階段,有不同的目標及策略。 iii. 較全面地體現(xiàn)面向對象方法的概念與原則。 iv. 大多數(shù)方法獨立于編程語言,通過面向對象的分析與設計所得到的系統(tǒng)模型可以由不同的編程語言實現(xiàn)。 定義: 面向對象的設計(OOD)就在是OOA模型基礎上運用
11、面向對象方法進行系統(tǒng)設計,目標是產生一個符合具體實現(xiàn)條件的OOD模型。UML建模語言1.1 面向對象開發(fā) 什么是什么是OOP OOP就是使用某種面向對象的語言,實現(xiàn)系統(tǒng)中的類和對象,并使系統(tǒng)能夠正常運行。在理想的OO開發(fā)過程中,OOP只是簡單的使用編程語言實現(xiàn)了OOA和OOD分析和設計模型。UML建模語言1.1 面向對象開發(fā) OO方法的主要優(yōu)點方法的主要優(yōu)點 軟件建模面臨的挑戰(zhàn) a) 問題域和系統(tǒng)責任復雜性日益增長 問題域(problem domain):被開發(fā)系統(tǒng)的應用領域,即在現(xiàn)實世界中由這個系統(tǒng)進行處理的業(yè)務范圍。 系統(tǒng)責任(system responsibilities):所開發(fā)的系統(tǒng)
12、應該具備的職能。 隨著硬件性能的提高和價格的下降,軟件系統(tǒng)所面臨的問題域和系統(tǒng)責任越來越復雜,因此系統(tǒng)也越來越龐大。 b) 交流問題 軟件系統(tǒng)的開發(fā)需要各類人員之頻繁交流。領域的多樣性使軟件工程中的交流問題比與其他工程更為突出。 有效的交流需要一種彼此都能理解的共同語言,否則將彼此的思維難以溝通,很容易隱藏下許多錯誤。 c) 需求的不斷變化 用戶因素,競爭因素,經(jīng)費因素 d) 軟件復用的要求 復用級別提高分析與設計結果復用 要求分析與設計模型的基本成分可以在多個系統(tǒng)中復用UML建模語言1.1 面向對象開發(fā) 面向對象方法的優(yōu)勢 i. 對問題域和系統(tǒng)責任的復雜性具有較強的處理能力 從問題域中的實際
13、事物出發(fā)來構造系統(tǒng)模型,使系統(tǒng)模型能直接地映射問題域;繼承、封裝、聚合等概念使系統(tǒng)的復雜性得到有效的控制。 ii. 提供了便于各類相關人員交流共同語言 使用與問題域一致的概念及術語,體現(xiàn)人類的日常思維方式,為改進各類人員之間的交流提供了最基本的條件。 iii. 對需求的變化具有較強的適應性 按封裝原則把系統(tǒng)中最容易變化的因素隔離起來,系統(tǒng)的各個單元成分之間接口很少,把需求變化所引起的影響局部化。 iv. 為實現(xiàn)分析與設計級別的軟件復用提供了有力支持 OO方法的封裝、繼承、聚合等原則,對象的完整性、獨立性以及與問題域的良好對應,使之有利于軟件復用。 v. 貫穿軟件生存周期全過程的一致性 從OOA
14、開始使用與問題域一致的概念、詞匯、原則及表示法,這種一致性保持到設計、編程、測試、維護等各個階段,對于整個軟件生存周期的開發(fā)、維護及管理活動都具有重要的意義。UML建模語言1.1 面向對象開發(fā) 幾種典型的幾種典型的OO方法方法方法的異同體現(xiàn)于:概念、表示法、系統(tǒng)模型、開發(fā)過程、可用性、技術支持等方面 UML建模語言1.1 面向對象開發(fā) Booch方法 UML建模語言1.1 面向對象開發(fā) Booch方法的過程, 特點:思維活躍,開拓與創(chuàng)新,可操作性不夠強,類圖與對象圖并存UML建模語言1.1 面向對象開發(fā) Coad/Yourdon方法,特點:概念簡練,過程清晰,強調概念的一致性,過程指導不夠具體
15、 UML建模語言1.1 面向對象開發(fā) Jacobson方法(OOSE),特點:通過用況描述用戶需求,用交互圖描述對象之間的交互,用況驅動的觀點言之有過。 UML建模語言1.1 面向對象開發(fā) Rumbaugh方法(OMT),特點:概念嚴謹,闡述清楚,過程具體,可操作性強,包含了許多非OO的內容,提出若干擴充概念,偏于復雜。 UML建模語言1.1.2 面向對象的主要概念1 對象對象(Object)是面向對象(Object-Oriented,OO)系統(tǒng)的基本構造塊,是一些相關的變量和方法的軟件集。2 面向對象與面向過程的區(qū)別面向對象:以對象為基礎,以事件或消息來驅動對象執(zhí)行處理,是自下而上的程序設計
16、方法,其特點是,從問題的一部分著手,在設計中以數(shù)據(jù)為中心,類為工具.結構化程序設計:自上而下,先確定程序的流程怎么走,函數(shù)間的調用關系和依賴關系是什么.UML建模語言3 對象與類的確定對象(Object)是由狀態(tài)(State)和行為(Behavior)構成的,是包含客觀事物特征的抽象實體,封裝了狀態(tài)和行為。 對象=數(shù)據(jù)+數(shù)據(jù)操作可以利用對象來代表現(xiàn)實世界中的對象:可用一個飛行試駕程序來代表現(xiàn)實世界中的正在飛行的飛機,或者用機床數(shù)控程序來代表現(xiàn)實世界的運行的機床。同樣可以使用對象來造型抽象的概念,比如,點擊按鈕事件就是一個用在GUI窗口系統(tǒng)的公共對象,它可以代表用戶點擊程序界面中的一個確定按鈕的
17、動作。UML建模語言1.1.3 對象與類的確定類(Class)是具有相同屬性和操作的一組對象的組合。 對象是類的實體化類的確定:確定系統(tǒng)的范圍,在系統(tǒng)范圍內尋找對象,將對象抽象成為一個類,進而確定類的數(shù)據(jù)和操作。例如名為“學生”的類被用于描述為被學生管理系統(tǒng)管理的學生對象。類的定義要包含以下的要素 第一,定義該類對象的數(shù)據(jù)結構(屬性的名稱和類型) 第二,定義對象所要執(zhí)行的操作,也就是類的對象要被調用執(zhí)行那些操作,以及這些操作時對象要執(zhí)行那些操作,比如數(shù)據(jù)庫操作等等。UML建模語言4 消息和事件n所謂消息(Message)是指描述事件發(fā)生的信息,是對象間相互聯(lián)系和相互作用的方式。一個消息主要由5
18、部分組成:消息的發(fā)送對象、消息的接收對象、消息傳遞方式、消息內容(參數(shù))、消息的返回。傳入的消息內容的目的有兩個,一個是讓接受請求的對象獲取執(zhí)行任務的相關信息,另一個是行為指令。n所謂事件通常是指一種由系統(tǒng)預先定義而由用戶或系統(tǒng)發(fā)出的動作。事件作用于對象,對象識別事件并作出相應反應 。n對象通過對外提供的方法在系統(tǒng)中發(fā)揮自己的作用,當系統(tǒng)中的其它對象請求這個對象執(zhí)行某個方法時,就向該對象發(fā)送一個消息,對象響應這個請求,完成指定的操作。程序的執(zhí)行取決于事件發(fā)生的順序,由順序產生的消息來驅動程序的執(zhí)行。UML建模語言1.2 面向對象的基本特征面向對象的核心元素面向對象的核心元素:對象對象,封裝封裝
19、,消息消息,類類,繼承繼承,多態(tài)性多態(tài)性,結構與連接結構與連接UML建模語言 客觀世界里的任何實體都可以被稱為對象??陀^世界里的任何實體都可以被稱為對象。 對象可以是具體的、有形的物,也可以是無形的對象可以是具體的、有形的物,也可以是無形的事物或概念。事物或概念。 對象是問題域或實現(xiàn)域中某些事物的一個抽象。對象是問題域或實現(xiàn)域中某些事物的一個抽象。 對象是一個封裝數(shù)據(jù)屬性和操作行為的實體。對象是一個封裝數(shù)據(jù)屬性和操作行為的實體。 系統(tǒng)中的對象在軟件生命周期的各個階段可能有系統(tǒng)中的對象在軟件生命周期的各個階段可能有不同的表示形式。不同的表示形式。 1. 對象UML建模語言一個對象的實例圖解UML
20、建模語言封裝(Encapsulation)是把對象的狀態(tài)和行為綁到一起的機制,把對象形成一個獨立的整體,并且盡可能的隱藏對象的內部細節(jié)。封裝有兩個含義:一是把對象的全部狀態(tài)和行為結合一起,形成一個不可分割的整體。對象的私有屬性只能夠由對象的行為來修改和讀取。二是盡可能隱蔽對象的內部細節(jié),與外界的聯(lián)系只能夠通過外部接口來實現(xiàn)。封裝的信息屏蔽作用反映了事物的相對獨立性,我們可以只關心它對外所提供的接口,即能夠提供什么樣的服務,而不用去關注其內部的細節(jié)問題。比如說使用手機,我們關注的通常是這個手機能實現(xiàn)什么功能,而不太會去關心這個手機的是怎么一步步制造出來的。2. 封裝UML建模語言 消息是向對象發(fā)
21、出的服務請求。 一個消息包含消息名、接受對象的標志、服務標志、輸入信息、回答信息等。 消息傳遞機制。 3. 消息UML建模語言 類是一組具有相同數(shù)據(jù)結構和相同操作的對象的集合。 類是對象的抽象。 客觀世界實際存在的都是對象,而不是類 。 類和對象的關系。 4. 類UML建模語言 繼承(Inheritance)是一種連接類與類的之間的層次模型。繼承是指特殊類的對象擁有其一般類的屬性和行為。 繼承意味著“自動地擁有”,即在特殊類中不必重新對已經(jīng)在一般類中所定義過的屬性和行為進行定義,而是特殊類自動地、隱含地擁有其一般類的屬性和行為。 繼承對類的重用性,提供了一種明確表述共性的方法。即一個特殊類既有
22、自己定義的屬性和行為,又有繼承下來的屬性和行為。5. 繼承繼承UML建模語言繼承的描述繼承的描述UML建模語言單重繼承和多重繼承的描述UML建模語言定義:同一操作作用于不同的對象,可以有不同的解釋,產生不同的執(zhí)行結果。多態(tài)性分為兩種: 編譯時的多態(tài)性。 運行時的多態(tài)性。6. 多態(tài)性UML建模語言 一般/特殊結構 整體/部分結構 實例連接 消息連接7. 結構與連接UML建模語言 發(fā)現(xiàn)對象,從對象中抽象出類的定義。 識別對象的內部特征。 識別對象的外部關系。 劃分主題,建立主題圖。 定義用例,建立交互圖。 建立詳細說明。 原型開發(fā)。面向對象分析的基本過程UML建模語言面向對象分析過程模型UML建模
23、語言 抽象原則 分類原則 聚合原則 關聯(lián)原則 消息通信原則面向對象分析的基本原則UML建模語言1.3 UML1.3 UML簡介簡介為什么要利用UML對系統(tǒng)進行面向對象建模,如何使用UML形成面向對象建模的開發(fā)模式。UML建模語言建模的使用是軟件成功的一個基本因素。模型的實質:對現(xiàn)實的簡化。 建模的目標 : 便于展現(xiàn)系統(tǒng)。 允許指定系統(tǒng)的結構或行為。 提供構造系統(tǒng)的模板。 記錄決策。 建模的重要性建模的重要性UML建模語言 選擇建立什么樣的模型對如何發(fā)現(xiàn)和解決問題具有重要的影響。 每個模型可以有多種表達方式。 最好的模型總是能夠切合實際。 孤立的模型是不完整的。任何好的系統(tǒng)都是由一些幾乎獨立的模
24、型拼湊出來的。 建模四原則UML建模語言面向對象建模面向對象建模 兩種最常用的建模方法:基于算法的和面向對象的。 隨著需求的變化和系統(tǒng)的增長,運用基于算法的建模方法建立起來的系統(tǒng)很難維護。 在面向對象的建模方法中,主要的模塊是對象或者類。UML建模語言 Booch 1993(Grady Booch) OOSE(Jim Rumbaugh) OMT-2(Ivar Jacobson)面向對象的建模語言統(tǒng)一建模語言UMLUML建模語言1.3.2UML的發(fā)展過程UML建模語言1.4 UML視圖uUML定義了一套建模語言。uUML是一種對軟件系統(tǒng)進行規(guī)約,構造,可視化和文檔化的語言。uUML也致力于并發(fā)分
25、布式系統(tǒng)和實時系統(tǒng)的建模。uUML的概念模型分為靜態(tài)結構,動態(tài)行為,實現(xiàn)構造,模型組織和擴展機制等部分。uUML的概念和模型劃分為視圖,圖和模型。UML建模語言1.4視圖 UML利用模型來描述系統(tǒng)的結構、靜態(tài)特征、行為或動態(tài)特征,它從不同的視角為系統(tǒng)的架構建模形成系統(tǒng)的不同視圖。UML建模語言結構分類描述了系統(tǒng)中的結構成員及其相互關系。類元包括類、用例、構件和節(jié)點。類元為研究系統(tǒng)動態(tài)行為奠定了基礎。類元視圖包括靜態(tài)視圖、用例視圖、實現(xiàn)視圖以及部署視圖。 動態(tài)行為描述了系統(tǒng)隨時間變化的行為。行為利用從靜態(tài)視圖中抽取的瞬間值的變化來描述。動態(tài)行為視圖包括狀態(tài)機視圖、活動視圖和交互視圖。模型管理說明
26、了模型的分層組織結構。包是模型的基本組織單元。特殊的包還包括模型和子系統(tǒng)。模型管理視圖跨越了其他視圖并根據(jù)系統(tǒng)開發(fā)和配置組織這些視圖。 視圖模型劃分為三個視圖域UML建模語言UML中的主要視圖有:用例視圖 、邏輯視圖 、并發(fā)視圖 、組件視圖 、部署視圖。UML建模語言 1. 用例視圖用例視圖描述了系統(tǒng)的參與者與系統(tǒng)進行交互的功能,是參與者所能觀察和使用到的系統(tǒng)功能的模型圖。UML建模語言2. 邏輯視圖描述用例視圖提出的系統(tǒng)功能的實現(xiàn)。主要關注系統(tǒng)內部,既描述系統(tǒng)的靜態(tài)結構,如類、對象及它們之間的關系,又描述系統(tǒng)內部的動態(tài)協(xié)作關系。UML建模語言3. 并發(fā)視圖主要考慮資源的有效利用、代碼的并行執(zhí)
27、行已經(jīng)系統(tǒng)環(huán)境中異步事件的處理。除了系統(tǒng)劃分為并發(fā)執(zhí)行的控制以外,并發(fā)視圖還要處理線程之間的通信與同步。描述并發(fā)視圖主要使用狀態(tài)圖、協(xié)作圖和活動圖UML建模語言4. 組件視圖描述系統(tǒng)的實現(xiàn)模塊以及它們之間的依賴關系。組件視圖可以添加組件的其它附加信息。描述組件視圖的主要是組件圖。UML建模語言5. 部署視圖顯示系統(tǒng)的物理部署,它描述位于節(jié)點上的運行實例的部署情況,還允許評估分配結果和資源分配。一般使用部署圖來描述。UML建模語言最常用的UML圖包括:用例圖、類圖、對象圖、組件圖和部署圖(靜態(tài)圖);順序圖、協(xié)作圖、狀態(tài)圖、活動圖(動態(tài)圖)。1.5 圖UML建模語言1. 用例圖:用例圖描述了系統(tǒng)提
28、供的一個功能單元。用例圖的主要目的是幫助開發(fā)團隊以一種可視化的方式理解系統(tǒng)的功能需求,包括基于基本流程的“角色”關系以及系統(tǒng)用例之間的關系。 用例角色用例間的關系UML建模語言2. 類圖:顯示了系統(tǒng)的靜態(tài)結構,表示不同的實體(人,事物和數(shù)據(jù))是如何相關聯(lián)的. 名稱操作或方法屬性UML建模語言類圖可以整合其他許多概念,下圖中可以看到泛化關系和關聯(lián)關系。 UML建模語言3. 對象圖:類圖的一個實例,用于顯示系統(tǒng)執(zhí)行時的一個可能,即在某一個時刻上系統(tǒng)顯現(xiàn)的樣子。它使用與類圖相似的符號描述。不同之處在于對象圖顯示的是類的多個對象實例而非實際的類。UML建模語言4. 狀態(tài)圖:是對類描述的補充,用于顯示類
29、的對象可能具備的所有狀態(tài),以及引起狀態(tài)改變的事件。狀態(tài)之間的變化稱為轉移,狀態(tài)圖由對象的各個狀態(tài)和連接這些狀態(tài)的轉移組成。事件的發(fā)生會觸發(fā)狀態(tài)間的轉移,導致對象從一種狀態(tài)轉化到另一種新的狀態(tài)。UML建模語言4. 狀態(tài)圖:表示某個類所處的不同狀態(tài)以及在這些狀態(tài)中的轉換過程.判斷點初始起點狀態(tài)間的轉換狀態(tài)終止點UML建模語言5. 序列圖(順序圖) :顯示了一個具體用例或者用例一部分的流程。垂直維度水平維度UML建模語言6. 協(xié)作圖:對一次交互中有意義的對象和對象間鏈接建模,除顯示消息的交互,協(xié)作圖也顯示對象以及它們之間的關系。順序圖和協(xié)作圖都可以表示各對象之間的交互關系,但它們的側重點不同。順序圖
30、用消息的排列關系來表達消息的時間順序,各角色之間的關系是隱含的;協(xié)作圖用各個角色的排列來表示角色之間的關系,并用消息說明這些關系。UML建模語言7. 活動圖用來表示兩個或者更多的對象之間在處理某個活動時的過程控制流程.開始泳道活動結束UML建模語言8. 組件圖指出某些功能實際存在于哪些地方.構件可以是源代碼組件、二進制組件或可執(zhí)行的組件。確保最終系統(tǒng)將會被接受。UML建模語言9. 部署圖用于表示該軟件系統(tǒng)如何部署到硬件環(huán)境中。它是顯示在系統(tǒng)中的不同的構件在何處物理運行以及如何進行彼此的通信。圖之間的作用:系統(tǒng)的部署圖利用系統(tǒng)物理結構的節(jié)點顯示屬于該節(jié)點的構件,然后使用構件圖顯示該構件包含的類,
31、接著使用交互圖顯示該類對象參與的交互,最終到達某個用例。UML建模語言把可以在圖中使用的基本概念統(tǒng)稱為模型元素。模型元素使用相關的語義、元素的正式定義、確定的語句來表達準確的含義。1.6 模型元素 模型元素劃分為事物和關系。UML建模語言(1)結構事物(Structural Thing)(2)動作事物(Behavioral Thing)(3)分組事物(Grouping Thing)(4)注釋事物(Annotational Thing)1. 事物事物是UML模型中面向對象的基本模塊,它們在模型中屬于靜態(tài)部分。UML建模語言2. 關系(5種) 以及這些事物之間的各種關系構成的。關系是指支配、協(xié)調各
32、種模型元素存在并相互使用的規(guī)則。(2)依賴(Dependency)關系(1)關聯(lián)(Associate)關系 UML建模語言(3)泛化(Generalization)關系(4)實現(xiàn)(Realization)關系l用在接口和實現(xiàn)接口的類或構件之間,l用在用例和實現(xiàn)用例的協(xié)作之間UML建模語言繼承指的是一個類(稱為子類、子接口)繼承另外的一個類(稱為父類、父接口)的功能,并可以增加它自己的新功能的能力,繼承是類與類或者接口與接口之間最常見的關系;在Java中此類關系通過關鍵字extends明確標識,在設計時一般沒有爭議性;UML建模語言實現(xiàn)指的是一個class類實現(xiàn)interface接口(可以是多個
33、)的功能;實現(xiàn)是類與接口之間最常見的關系;在Java中此類關系通過關鍵字implements明確標識,在設計時一般沒有爭議性; UML建模語言依賴可以簡單的理解,就是一個類A使用到了另一個類B,而這種使用關系是具有偶然性的、臨時性的、非常弱的,但是B類的變化會影響到A;比如某人要過河,需要借用一條船,此時人與船之間的關系就是依賴;表現(xiàn)在代碼層面,為類B作為參數(shù)被類A在某個method方法中使用;UML建模語言關聯(lián)他體現(xiàn)的是兩個類、或者類與接口之間語義級別的一種強依賴關系,比如我和我的朋友;這種關系比依賴更強、不存在依賴關系的偶然性、關系也不是臨時性的,一般是長期性的,而且雙方的關系一般是平等的
34、、關聯(lián)可以是單向、雙向的;表現(xiàn)在代碼層面,為被關聯(lián)類B以類屬性的形式出現(xiàn)在關聯(lián)類A中,也可能是關聯(lián)類A引用了一個類型為被關聯(lián)類B的全局變量;UML建模語言(5)聚合聚合是關聯(lián)關系的一種特例,他體現(xiàn)的是整體與部分、擁有的關系,即has-a的關系,此時整體與部分之間是可分離的,他們可以具有各自的生命周期,部分可以屬于多個整體對象,也可以為多個整體對象共享;比如計算機與CPU、公司與員工的關系等;表現(xiàn)在代碼層面,和關聯(lián)關系是一致的,只能從語義級別來區(qū)分;UML建模語言組合組合也是關聯(lián)關系的一種特例,他體現(xiàn)的是一種contains-a的關系,這種關系比聚合更強,也稱為強聚合;他同樣體現(xiàn)整體與部分間的關
35、系,但此時整體與部分是不可分的,整體的生命周期結束也就意味著部分的生命周期結束;比如你和你的大腦;表現(xiàn)在代碼層面,和關聯(lián)關系是一致的,只能從語義級別來區(qū)分; UML建模語言 UML提供了一些通用的公共機制,使用這些通用的公共機制(通用機制)能夠使UML在各種圖中添加適當?shù)拿枋鲂畔?,從而完善UML的語義表達。1.7 UML的通用機制通用機制:修飾、注釋、規(guī)格說明、擴展機制。UML建模語言1. 修飾(Adornment)在UML的圖形表示中,每一個模型元素都有一個基本符號,這個基本符號可視化地表達了模型元素最重要的信息。UML建模語言2. 注釋用于為模型元素添加額外信息與說明。注釋以自由文本的形式
36、出現(xiàn),它的信息類型為字符串,可以附加到任何模型中,并且可以放置在模型元素的任意位置上。在UML圖中注釋使用一條虛線連接它所解釋或細化的元素。UML建模語言3. 規(guī)格說明(Specification)如果把模型元素當成一個對象來看待,那么模型元素本身也應該具有很多的屬性,這些屬性用于維護屬于該模型元素的數(shù)據(jù)值。屬性是使用名稱和標記值(Tagged Value)來定義的。UML建模語言4. 擴展機制(Extensibility)允許UML的使用人員根據(jù)需要自定義一些構造型語言成分,通過該擴展機制用戶可以定義使用自己的元素。UML擴展機制由三部分組成:構造型(Stereotype)、標記值(Tagg
37、ed Value)和約束(Constraint)。UML建模語言1. 構造型(Stereotype)構造型就像在模型元素的外面重新添加了一層外殼,這樣就在模型元素上又加入了一個額外語義。圖2 使用include構造型示例 圖圖1 1 未使用未使用構造型示例構造型示例UML建模語言2. 標記值(Tagged Value)標記值是由一對字符串構成的,這對字符串包含一個標記字符串和一個值字符串,從而用來存儲有關模型元素或表達元素的相關信息。 UML建模語言3. 約束(Constraint)如果需要對UML構造塊的語義進行擴展,就可以使用約束機制,這種機制用于擴展UML構造塊的語義,允許建模者和設計人
38、員增加新的規(guī)則和修改現(xiàn)有的規(guī)則。UML建模語言13章 UML的對象約束語言對象約束語言(Object Constraint Language,OCL)是一種能夠使用工具進行解釋的表達UML約束的標準方法。用規(guī)范或自然語言表達。對象約束語言包含如下4個特性。1. 對象約束語言不僅是查詢語言還是約束語言2. 對象約束語言是基于數(shù)學的3. 對象約束語言是一種強類型的語言4. 對象約束語言也是一種聲明式語言對象約束語言的元模型包含類型包和表達式包.對象約束語言支持不變量約束、前置條件和后置條件UML建模語言不變量約束是指當某個對象在進行某一操作的過程中將某種約束應用到一種類型上,并指定一個條件特征,該
39、特征在此操作的整個過程中保持不變。UML建模語言UML中的前置條件是指當某個對象進行某一操作時,附于此操作的限定條件(Constraint)必須為True。UML建模語言UML中的后置條件是指當一個操作執(zhí)行結束時附于此操作的限定條件(Constraint)也必須為True。UML建模語言UML的未來發(fā)展目標對于UML 2.0的新改進包括以下5個方面。1. 在語言定義方面的精確程度有了很大提高2. 一個改良的語言組織3. 重點改進大規(guī)模的軟件系統(tǒng)的模型性能4. 對特定領域改進的支持5. 全面合并、合理化、清晰化各種不同的模型概念 UML建模語言 本 節(jié) 小 結本節(jié)是對UML的內容進行一個簡要的概
40、括,重點強調的是UML的基本內容,它是后面對UML進行詳細介紹的鋪墊。在下一章中將對UML的工具Rational Rose進行介紹。UML建模語言第11章 Rational Rose概述本章學習的重點是Rational Rose的4種視圖模型 UML建模語言11.1 Rational Rose的起源與發(fā)展Rose Modeler:僅僅用于創(chuàng)建系統(tǒng)模型,但是不支持代碼生成和逆向工程。Rose Professional:可以創(chuàng)建系統(tǒng)模型,包含了Rose Modeler的功能,并且還可以使用一種語言來進行代碼生成。Rose Enterprise:Rose的企業(yè)版工具,支持前面Rose工具的所有功能,
41、并且支持各種語言,包括C+、Java、Ada、CORBA、Visual Basic、COM、Oracle 8等,還包括對XML的支持。UML建模語言11.2 Rational Rose對UML的支持1. Rational Rose提供基本的繪圖功能2. Rational Rose提供模型庫3. Rational Rose提供導航功能4. Rational Rose提供代碼生成功能5. Rational Rose提供逆向工程功能6. Rational Rose提供模型互換功能 Rational Rose建模工具能夠為UML提供很好的支持,可以從以下6個方面進行說明。 UML建模語言1.Ratio
42、nal Rose提供基本的繪圖功能 為UML提供了基本的繪圖功能是Rational Rose作為一個建模語言工具的基礎。Rational Rose提供了眾多的繪圖元素,形象化的繪圖支持使得繪制UML圖形變得輕松有趣。UML建模語言2. Rational Rose提供模型庫Rational Rose的支持工具維護著一個模型庫,這個模型庫相當于一個數(shù)據(jù)庫,該數(shù)據(jù)庫中包含模型中使用的各種元素的信息。(1)非一致性檢查(2)審查功能(3)報告功能(4)重用建模元素和圖功能UML建模語言3. Rational Rose提供導航功能在使用多個視圖或圖來共同描述一個解決方案的時候,允許用戶在這些視圖或圖中進
43、行導航。UML建模語言4. Rational Rose提供代碼生成功能Rational Rose的代碼生成功能可以針對不同類型的目標語言生成相應的代碼,這些目標語言包括C+、Ada、Java、CORBA、Oracle、Visual Basic等。UML建模語言5. Rational Rose提供逆向工程功能逆向工程與代碼生成功能正好相反。利用逆向工程功能,Rational Rose可以通過讀取用戶編寫的相關代碼,在進行分析以后生成顯示用戶代碼結構的相關UML圖。UML建模語言6. Rational Rose提供模型互換功能在一種建模工具中創(chuàng)建了模型并將其輸出后,接著想在另外一種建模工具中將其導
44、入,由于各種建模工具之間提供了不同的保存格式,這就造成了導入往往是不可能實現(xiàn)的。為了實現(xiàn)這種功能,一個必要的條件就是在兩種不同的工具之間采用一種用于存儲和共享模型的標準格式。UML建模語言11.3 Rational Rose的4種視圖模型用例視圖(Use Case View)邏輯視圖(Logical View)構件視圖(Component View)部署視圖(Deployment View)使用Rational Rose建立的Rose模型中分別包括4種視圖.UML建模語言11.3.1 用例視圖(Use Case View)在用例視圖(Use Case View)中包括了系統(tǒng)中的所有參與者、用例
45、和用例圖,必要時還可以在用例視圖中添加順序圖、協(xié)作圖、活動圖和類圖等。 UML建模語言建立方法:UML建模語言11.3.1 用例視圖(Use Case View)1. 包(Package)包是在用例視圖和其他視圖中最通用的模型元素組的表達形式。2. 用例(Use Case)用例用來表示在系統(tǒng)中所提供的各種服務。 UML建模語言3. 參與者(Actor)參與者是指存在于被定義系統(tǒng)外部并與該系統(tǒng)發(fā)生交互的人或其他系統(tǒng)。UML建模語言4. 類(Class)類是對某個或某些對象的定義。UML建模語言5. 用例圖(Use Case Diagram)用例圖顯示了各個參與者、用例以及它們之間的交互。UML建
46、模語言6. 類圖(Class Diagram)類圖提供了結構圖類型的一個主要實例,并提供一組記號元素的初始集,以供其他結構圖使用。UML建模語言7. 協(xié)作圖(Collaboration Diagram)協(xié)作圖用于表達各種參與者和用例之間的交互協(xié)作關系。UML建模語言8. 序列圖(Sequence Diagram)序列圖用于表達各種參與者和用例之間的交互序列關系。UML建模語言9. 狀態(tài)圖(Statechart Diagram)狀態(tài)圖主要用來表達各種參與者或類的狀態(tài)之間的轉換。UML建模語言10. 活動圖(Activity Diagram)活動圖主要用來表達參與者的各種活動之間的轉換。UML建模
47、語言11. 文件(File)File是指能夠連接到用例視圖中的一些外部文件。12. URL地址(URL)URL是指能夠連接到用例視圖的一些外部URL地址。UML建模語言邏輯視圖關注于系統(tǒng)如何實現(xiàn)用例中所描述的功能,主要是對系統(tǒng)功能性需求提供支持,即在為用戶提供服務方面系統(tǒng)所應該提供的功能。11.3.2 邏輯視圖(Logical View)在邏輯視圖中,同樣可以創(chuàng)建一些模型元素。UML建模語言邏輯視圖的創(chuàng)建: UML建模語言1.類(Class) 在邏輯視圖中主要是對抽象出來的類進行詳細定義,包括確定類的名稱、方法和屬性等。UML建模語言2. 工具類(Class Utility)工具類是對公共機制
48、或服務的定義,通常存放一些靜態(tài)的全局變量,從而方便其他類對這些信息進行訪問。UML建模語言3. 用例(Use Case)在邏輯視圖中仍然可以存在用例,目的是圍繞用例添加各種圖,從而詳細描述該用例。UML建模語言4. 接口(Interface)類可以有它的真實實例,然而一個接口必須至少有一個類來實現(xiàn)它。UML建模語言5. 包(Package)使用包可以將邏輯視圖中的各種UML圖或模型元素按照某種規(guī)則進行劃分。6. 類圖(Class Diagram)類圖用于瀏覽系統(tǒng)中的各種類、類的屬性、操作以及類與類之間的關系。7. 用例圖(Use Case Diagram)其功能和在用例視圖中介紹的一樣,只是放
49、在不同的視圖區(qū)域中了。UML建模語言8. 協(xié)作圖(Collaboration Diagram)協(xié)作圖用于按照各種類或對象交互發(fā)生的一系列協(xié)作關系顯示這些類或對象之間的交互。9. 序列圖(Sequence Diagram)序列圖用于按照各種類或對象交互發(fā)生的一系列順序顯示各種類或對象之間的交互。10. 狀態(tài)圖(Statechart Diagram)狀態(tài)圖用于描述各個對象自身所處狀態(tài)的轉換,用于對模型元素的動態(tài)行為進行建模,更具體地說,就是對系統(tǒng)行為中受事件驅動的方面進行建模。UML建模語言11. 活動圖(Activity Diagram)活動圖含:活動狀態(tài),狀態(tài)的轉移?;顒記Q策。同步連接。12.
50、 文件(File)File是指能夠連接到邏輯視圖中的一些外部文件,用來詳細介紹使用邏輯視圖的各種信息。13. URL地址(URL)URL是指能夠連接到邏輯視圖的一些外部URL地址。這些地址用于介紹邏輯視圖的相關信息。UML建模語言構件視圖用來描述系統(tǒng)中的各個實現(xiàn)模塊以及它們之間的依賴關系。包含模型代碼庫,執(zhí)行文件,運行庫和其他構件信息。11.3.3 構件視圖(Component View) UML建模語言1. 包(Package)包在構件視圖中仍然擔當?shù)氖莿澐值墓δ堋?. 構件(Component)構件是系統(tǒng)中實際存在的可更換部分,它實現(xiàn)特定的功能,符合一套接口標準并實現(xiàn)一組接口。UML建模語
51、言3. 構件圖(Component Diagram)構件圖的主要目的是顯示系統(tǒng)構件間的結構關系。UML建模語言4. 文件(File)File是指能夠連接到構件視圖中的一些外部文件,用來詳細介紹使用構件視圖的各種信息。5. URL地址(URL)URL是指能夠連接到構件視圖的一些外部URL地址。這些地址用于介紹構件視圖的相關信息。 UML建模語言在系統(tǒng)中只包含一個部署視圖,用來說明各種處理活動在系統(tǒng)各節(jié)點的分布。 11.3.4 部署視圖(Deployment View)UML建模語言1. 處理器(Processor)處理器是指任何有處理功能的節(jié)點。2. 設備(Device)設備是指任何沒有處理功能
52、的節(jié)點,例如打印機。3. 文件(File)File是指那些能夠連接到部署視圖中的外部文件,用來詳細介紹使用部署視圖的各種信息。4. URL地址(URL)URL是指能夠連接到部署視圖的一些外部URL地址。這些地址用于介紹部署視圖的相關信息。UML建模語言Rational Rose作為一種很強大的UML建模工具,不僅通過視圖建立不同詳細程度的模型,從而對UML提供非常好的支持,而且還提供了一些其他的技術來完善軟件開發(fā),其中Rational Rose使用模型生成代碼、使用逆向工程從代碼生成模型以及對XML的支持都是一些很重要的技術。11.4 Rational Rose的其他技術 UML建模語言可以通
53、過選擇Tools | Options命令來查看所支持的語言信息。1. 代碼生成Rational Rose Enterprise支持的語言信息UML建模語言使用Rational Rose生成代碼時可以通過以下4個步驟進行,以目標語言Java代碼為例。(1)選擇待轉換的目標模型(2)檢查Java語言的語法錯誤(3)設置代碼生成屬性(4)生成代碼UML建模語言2. 逆向工程在Rational Rose中可以通過收集有關類(Classes)、類的屬性(Attributes)、類的操作(Operations)、類與類之間的關系(Relationships)以及包(Packages)和構件(Compone
54、nts)等靜態(tài)信息,將這些信息轉化成為對應的模型,并在相應的圖中顯示出來。UML建模語言11.5 本 章 小 結本章對Rational Rose進行概要介紹,如Rational Rose的起源與發(fā)展、對UML是如何支持的等。還介紹了Rational Rose的4個視圖模型,分別為用例視圖(Use Case View)、邏輯視圖(Logical View)、構件視圖(Component View)和部署視圖(Deployment View)。最后介紹了Rational Rose的一些其他技術,如Rational Rose的雙向工程等。UML建模語言第11章 Rational統(tǒng)一過程 關于Rati
55、onal統(tǒng)一過程中更加詳細的內容,可以參考Rational統(tǒng)一過程的電子資源或書籍。本章的重點是對Rational統(tǒng)一過程的內容和結構進行介紹。UML建模語言4.1 什么是Rational統(tǒng)一過程下面將從4個方面介紹什么是Rational統(tǒng)一過程。1. Rational統(tǒng)一過程是一種軟件工程過程2. Rational統(tǒng)一過程是一個過程產品3. Rational統(tǒng)一過程擁有一套自己的過程框架4. Rational統(tǒng)一過程包含了許多現(xiàn)代軟件開發(fā)中的最佳實踐UML建模語言在各種書籍以及參考資料中,將Rational統(tǒng)一過程的開發(fā)過程使用一種二維結構來表達,即使用沿著橫軸和縱軸兩個坐標軸來表達該過程。
56、UML建模語言UML建模語言Rational統(tǒng)一過程同時也包含了許多現(xiàn)代軟件開發(fā)中的最佳實踐。Rational統(tǒng)一過程以一種能夠被大多數(shù)項目和開發(fā)組織適應的形式建立整個過程,其包含的6項最佳實踐如下:1.迭代式軟件開發(fā)。2.需求管理。3.基于構件的架構應用。4.建立可視化的軟件模型。5.軟件質量驗證。6.軟件變更控制。UML建模語言4.2 Rational統(tǒng)一過程的演進歷史 Ratinal統(tǒng)一過程是經(jīng)過一系列的階段逐步發(fā)展和完善起來的,在這發(fā)展的十幾年的時間里,Rational統(tǒng)一過程搜集并反饋了很多公司和個人的使用經(jīng)驗,并不斷逐步豐富Rational統(tǒng)一過程的內容。 統(tǒng)一建模語言(UML)可
57、以說是迄今為止最為成熟的軟件建模技術和語言。UML建模語言Rational統(tǒng)一過程的演進歷史 UML建模語言4.3 Rational統(tǒng)一過程的結構4.1 什么是Rational統(tǒng)一過程4.2 Rational統(tǒng)一過程的演進歷史4.3 Rational統(tǒng)一過程的結構4.4 RATIONAL統(tǒng)一過程的配置和實現(xiàn)UML建模語言4.3.1 統(tǒng)一過程的靜態(tài)結構: Rational統(tǒng)一過程的靜態(tài)結構是通過對其模型元素的定義來進行描述的。在Rational統(tǒng)一過程的開發(fā)流程中定義了“誰何時如何做某事”,并分別使用4種主要的建模元素來進行表達。UML建模語言1. 角色(Workers)“誰”來做? 角色定義了
58、個人或由若干人所組成小組的行為和責任。2. 活動(Activities)“如何”去做? 角色所執(zhí)行的行為使用活動表示,每一個角色都與一組相關的活動聯(lián)系,活動定義了它們執(zhí)行的工作。3. 產物(Artifacts)要做“某事”? 產物是被過程產生的、修改或過程所使用的一段信息。4. 工作流(Workflows)“何時”做?需要一種方法來描述能產生若干有價值的有意義結果的活動序列,從而顯示角色之間的交互作用,這就是工作流。4種主要的建模元素: UML建模語言Rational統(tǒng)一過程的動態(tài)結構是通過對迭代式軟件開發(fā)過程的周期、階段、迭代過程以及里程碑等的描述來進行表示。為了對迭代的特定短期目標進行分割并組織迭代開發(fā)秩序,將迭代過程劃分為4個連續(xù)的階段,分別為初始(Inception)階段、細化(Elaboration)階段、構建(Construction
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國全銅水槽落水頭市場調查研究報告
- 2025至2031年中國音頻電療機行業(yè)投資前景及策略咨詢研究報告
- 2025年窗配件項目可行性研究報告
- 2025至2031年中國電腦花織帶行業(yè)投資前景及策略咨詢研究報告
- 2025至2031年中國無紡紙行業(yè)投資前景及策略咨詢研究報告
- 2025年掛鎖項目可行性研究報告
- 2025年奧運熒光筆項目可行性研究報告
- 2025至2031年中國全自動圓角切斷機行業(yè)投資前景及策略咨詢研究報告
- 2025年便攜式酒精檢測儀項目可行性研究報告
- 2025年T/C染色線卡項目可行性研究報告
- 中考物理復習備考策略
- 博士后進站申請書博士后進站申請書八篇
- 小報:人工智能科技科學小報手抄報電子小報word小報
- GB/T 41509-2022綠色制造干式切削工藝性能評價規(guī)范
- 全面介紹現(xiàn)貨中遠期交易
- 公安系防暴安全03安檢
- 孫權勸學教案全國一等獎教學設計
- 企業(yè)生產現(xiàn)場6S管理知識培訓課件
- 五年級下冊數(shù)學課件 第10課時 練習課 蘇教版(共11張PPT)
- 電梯口包邊施工方案正式
- 三年級道德與法治下冊我是獨特的
評論
0/150
提交評論