




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
面向?qū)ο蟮幕靖拍畹谝豁?yè),共五十頁(yè),編輯于2023年,星期五目的要求:使學(xué)生了解傳統(tǒng)方法學(xué)的缺點(diǎn),掌握面向?qū)ο蟮幕靖拍?,三種模型:對(duì)象模型、動(dòng)態(tài)模型、功能模型的基本概念。教學(xué)重點(diǎn):掌握面向?qū)ο蟮幕靖拍?。教學(xué)難點(diǎn):三種模型:對(duì)象模型、動(dòng)態(tài)模型的概念。講授內(nèi)容:認(rèn)識(shí)傳統(tǒng)方法學(xué)的缺點(diǎn),引入軟件工程的新途徑。面向?qū)ο蟮幕靖拍睿N模型:對(duì)象模型、動(dòng)態(tài)模型、功能模型的基本概念。教學(xué)目的、要求,重點(diǎn)、難點(diǎn)第二頁(yè),共五十頁(yè),編輯于2023年,星期五第一節(jié)面向?qū)ο蠹夹g(shù)的基本概念第三頁(yè),共五十頁(yè),編輯于2023年,星期五存在的問題:1、生產(chǎn)率提高的幅度遠(yuǎn)不能滿足需要 2、軟件重用程度很低 3、軟件仍然很難維護(hù) 4、軟件往往不能真正滿足用戶需要出現(xiàn)問題的原因:(最根本的原因有兩個(gè)) 1、僵化的瀑布模型 1)某些類型的系統(tǒng)需求是模糊的 2)項(xiàng)目參與者之間存在通訊鴻溝 3)預(yù)先定義的需求可能是過時(shí)的 2、結(jié)構(gòu)化技術(shù)的缺點(diǎn) 1)系統(tǒng)結(jié)構(gòu)不穩(wěn)定; 2)系統(tǒng)較難修改和擴(kuò)充; 3)軟件的可重用性較差。一、傳統(tǒng)方法學(xué)的缺點(diǎn)第四頁(yè),共五十頁(yè),編輯于2023年,星期五1、區(qū)分兩類不同的軟件系統(tǒng)
一類系統(tǒng)的需求比較穩(wěn)定,而且能夠預(yù)先指定,稱為預(yù)先指定的系統(tǒng);如:計(jì)算機(jī)控制系統(tǒng),衛(wèi)星圖象處理系統(tǒng),空中交通管理系統(tǒng),火箭發(fā)射跟蹤控制系統(tǒng);操作系統(tǒng),編譯系統(tǒng),數(shù)據(jù)庫(kù)管理系統(tǒng)等;一類系統(tǒng)的需求是模糊的或隨時(shí)間變化的,通常在系統(tǒng)安裝運(yùn)行之后,還會(huì)由用戶驅(qū)動(dòng)對(duì)需求進(jìn)行動(dòng)態(tài)修改,稱為用戶驅(qū)動(dòng)系統(tǒng);如:商業(yè)或行政數(shù)據(jù)處理系統(tǒng),決策支持系統(tǒng)等。二、軟件工程的新途徑第五頁(yè),共五十頁(yè),編輯于2023年,星期五2、快速原型法簡(jiǎn)介
快速原型法的核心是:用交互的快速建立起來的原型取代了形式的、僵化的大部頭的規(guī)格說明,用戶通過在計(jì)算機(jī)上運(yùn)行和試用原形系統(tǒng)而向開發(fā)者提供真實(shí)的反饋意見。
原型法的基本思想是:首先建立一個(gè)用戶主要需求的原型系統(tǒng),讓用戶在計(jì)算機(jī)上運(yùn)行、試用這個(gè)原型系統(tǒng),通過實(shí)踐、了解未來的系統(tǒng)概貌…最終建立起完全符合用戶需要的新系統(tǒng)。瀑布模型:用戶和分析員反復(fù)討論,“紙上談兵”;
原型系統(tǒng):用戶在計(jì)算機(jī)上運(yùn)行、試用,“真槍實(shí)彈”;“試用----反饋----修改”的多次反復(fù)。第六頁(yè),共五十頁(yè),編輯于2023年,星期五3、用原型法開發(fā)軟件的過程
1)拋棄原型法
目的:評(píng)價(jià)目標(biāo)系統(tǒng)的某個(gè)特性,以便更準(zhǔn)確的確定需求,更嚴(yán)格的驗(yàn)證設(shè)計(jì)方案。使用完后將原型系統(tǒng)拋棄掉,然后重建正式的目標(biāo)系統(tǒng)。
2)演化原型法
基本做法:經(jīng)過初步調(diào)研和分析獲知用戶的基本需求之后,就利用適當(dāng)?shù)能浖ぞ呖焖俚膶?shí)現(xiàn)一個(gè)原型系統(tǒng),作為溝通各方的基礎(chǔ)和用戶實(shí)踐的場(chǎng)所,開發(fā)人員根據(jù)用戶試用后的意見,對(duì)原型進(jìn)行修改和擴(kuò)充,然后再次交給用戶試用,并根據(jù)試用后提出的意見,再次對(duì)原型進(jìn)行修改和擴(kuò)充,經(jīng)過多次迭代直到用戶感到完全滿意為止。第七頁(yè),共五十頁(yè),編輯于2023年,星期五
1、面向?qū)ο蠓椒ê?jiǎn)介
出發(fā)點(diǎn)和基本原則:盡可能模擬人類習(xí)慣的思維方式,使開發(fā)軟件的方法和過程盡可能接近人類認(rèn)識(shí)世界解決問題的方法和過程。即使描述問題的問題空間(問題域)與實(shí)現(xiàn)解法的解空間(求解域)在結(jié)構(gòu)上盡可能一致。
概括的說,面向?qū)ο蠓椒ㄓ邢率?個(gè)要點(diǎn):1)認(rèn)為客觀世界是由各種對(duì)象組成的,任何事物都是對(duì)象,復(fù)雜的對(duì)象可以由比較簡(jiǎn)單的對(duì)象以某種方式組合而成。
第二節(jié)面向?qū)ο蟮幕靖拍畹诎隧?yè),共五十頁(yè),編輯于2023年,星期五
2)把所有對(duì)象都劃分成各種對(duì)象類(類CLASS),每個(gè)對(duì)象類都定義了一組數(shù)據(jù)和一組方法。 3)按照子類(派生類)和父類(基類)的繼承關(guān)系,把若干個(gè)對(duì)象類組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)(類等級(jí))。4)對(duì)象彼此之間僅能通過傳遞消息互相聯(lián)系。
OO=Objects+Classes+Inheritance+Communication
withmessage
面向?qū)ο?對(duì)象+類+繼承+傳遞消息如果僅使用對(duì)象和消息的方法 ------稱為基于對(duì)象的方法;如果進(jìn)一步要求把所有端詳劃分為類 ------稱為基于類的方法;只有同時(shí)使用對(duì)象,類,繼承,消息的方法 ------真正面向?qū)ο蟮姆椒ā5诰彭?yè),共五十頁(yè),編輯于2023年,星期五
1)與人類習(xí)慣的思維方式一致
傳統(tǒng)的程序設(shè)計(jì)技術(shù)是面向過程的設(shè)計(jì)方法,以算法為核心,把數(shù)據(jù)和過程作為相互獨(dú)立的部分,數(shù)據(jù)代表問題空間中的客體,程序代碼則用于處理這些數(shù)據(jù)。 把數(shù)據(jù)和代碼作為分離的實(shí)體,是計(jì)算機(jī)的特點(diǎn)。但總存在“使用錯(cuò)誤的數(shù)據(jù)調(diào)用正確的程序模塊,或使用正確的數(shù)據(jù)調(diào)用了錯(cuò)誤的程序模塊”的危險(xiǎn)。 傳統(tǒng)的程序設(shè)計(jì)技術(shù)忽略了數(shù)據(jù)和操作之間的內(nèi)在聯(lián)系,設(shè)計(jì)的軟件系統(tǒng)其解空間和問題空間并不一致,難于理解。
2面向?qū)ο蠓椒▽W(xué)的主要優(yōu)點(diǎn)第十頁(yè),共五十頁(yè),編輯于2023年,星期五
面向?qū)ο蟮能浖夹g(shù)以對(duì)象為核心,軟件系統(tǒng)由對(duì)象組成。對(duì)象是對(duì)現(xiàn)實(shí)世界實(shí)體的正確抽象,它由描述內(nèi)部狀態(tài)表示靜態(tài)屬性的數(shù)據(jù),以及可以對(duì)這些數(shù)據(jù)施加的操作(對(duì)象的動(dòng)態(tài)行為),封裝在一起所構(gòu)成的統(tǒng)一體。 面向?qū)ο蟮能浖夹g(shù)的基本原理,使用現(xiàn)實(shí)世界的概念抽象地思考問題從而自然地解決問題。強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的概念而不強(qiáng)調(diào)算法,鼓勵(lì)開發(fā)者在軟件開發(fā)的絕大部分過程中都用應(yīng)用領(lǐng)域的概念去思考。第十一頁(yè),共五十頁(yè),編輯于2023年,星期五
傳統(tǒng)的軟件開發(fā)過程可以用“瀑布”模型來描述,強(qiáng)調(diào)“自頂向下”按部就班地完成軟件開發(fā)工作。 面向?qū)ο蠓椒▽W(xué)的出發(fā)點(diǎn)和基本原則就是分析、設(shè)計(jì)、實(shí)現(xiàn)一個(gè)軟件系統(tǒng)的方法和過程,盡可能接近人們認(rèn)識(shí)世界解決問題的方法和過程。也就是使描述問題的問題空間和描述解法的解空間在結(jié)構(gòu)上盡可能一致。第十二頁(yè),共五十頁(yè),編輯于2023年,星期五
2)穩(wěn)定性好;
傳統(tǒng)的程序設(shè)計(jì)技術(shù)以算法為核心,開發(fā)過程基于功能分析和功能分解。 面向?qū)ο蟮能浖夹g(shù)以對(duì)象為核心,基于構(gòu)造問題領(lǐng)域的對(duì)象模型。當(dāng)系統(tǒng)的功能需求變化時(shí)并不會(huì)引起軟件結(jié)構(gòu)的整體變化,僅需要做一些局部修改。
3)可重用性好;
用已有零部件裝配新的產(chǎn)品是典型的重用技術(shù)。 傳統(tǒng)方法學(xué)中內(nèi)聚性好的模塊獨(dú)立性高,但數(shù)據(jù)和程序彼此獨(dú)立,實(shí)際上重用性差。 面向?qū)ο蟮能浖夹g(shù)中的對(duì)象具有很強(qiáng)的自含性,對(duì)象所固有的封裝性和信息隱藏機(jī)理,使得對(duì)象的內(nèi)部實(shí)現(xiàn)和外界隔離,具有較強(qiáng)的獨(dú)立性。
第十三頁(yè),共五十頁(yè),編輯于2023年,星期五4)較易開發(fā)大型軟件產(chǎn)品
開發(fā)大型軟件系統(tǒng)時(shí),開發(fā)人員的組織方法不當(dāng)是出現(xiàn)問題的主要原因。面向?qū)ο蠓缎烷_發(fā)軟件時(shí),可以把一個(gè)大型軟件產(chǎn)品看作一系列本質(zhì)上相互獨(dú)立的小產(chǎn)品來處理。一方面降低了技術(shù)難度,另一方面改善了管理工作。5)可維護(hù)性好;
面向?qū)ο蟮能浖€(wěn)定性好 面向?qū)ο蟮能浖容^容易修改 面向?qū)ο蟮能浖容^容易理解 面向?qū)ο蟮能浖子跍y(cè)試和調(diào)試第十四頁(yè),共五十頁(yè),編輯于2023年,星期五
在應(yīng)用領(lǐng)域中有意義的、與所要解決的問題有關(guān)系的任何事物都可以作為對(duì)象,可以是具體的物理實(shí)體的抽象,也可是人為的概念,或是任何有明確邊界和意義的東西。如:一名職工,一家公司,一個(gè)窗口,一座圖書館,一本圖書,貸款和借款等。
面向?qū)ο蠓椒▽W(xué)中的對(duì)象是由描述該對(duì)象屬性的數(shù)據(jù)以及可以對(duì)這些數(shù)據(jù)施加的所有操作封裝在一起構(gòu)成的統(tǒng)一體。對(duì)象可以做的操作表示對(duì)象的動(dòng)態(tài)行為,OOD中稱為對(duì)象的服務(wù)或方法。二、基本概念(一)
對(duì)象第十五頁(yè),共五十頁(yè),編輯于2023年,星期五1、對(duì)象的形象表示
一個(gè)對(duì)象如同一臺(tái)錄音機(jī),當(dāng)在軟件中使用一個(gè)對(duì)象的時(shí)候,只能通過對(duì)象與外界的界面來操作它。實(shí)現(xiàn)對(duì)象操作的代碼和數(shù)據(jù)是隱藏在對(duì)象內(nèi)部的,一個(gè)對(duì)象好象是一個(gè)黑盒子。使用對(duì)象時(shí)只需知道它向外界提供的接口形式而無須知道內(nèi)部的具體算法,不僅使對(duì)象變得非常簡(jiǎn)單、方便,而且具有很高的安全性和可靠性。操作1操作2操作3界面操作1、2、3的實(shí)現(xiàn)狀態(tài)S圖4.1對(duì)象的形象表示第十六頁(yè),共五十頁(yè),編輯于2023年,星期五2、對(duì)象的定義
定義1(從面向?qū)ο蟪绦蛟O(shè)計(jì)角度看待對(duì)象)
對(duì)象是具有相同狀態(tài)的一組操作的集合。
定義2:(從信息模擬角度看待對(duì)象)
對(duì)象是對(duì)問題域中某個(gè)東西的抽象,這種抽象反映了系統(tǒng)保存有關(guān)這個(gè)東西的信息或與它交互的能力。(對(duì)象是對(duì)屬性值和操作的封裝)。定義3:(形式化的定義)
對(duì)象::=<ID,MS,DS,MI> ID--對(duì)象的標(biāo)識(shí)或名字
MS--對(duì)象中的操作集合
DS--對(duì)象的數(shù)據(jù)結(jié)構(gòu)MI--對(duì)象受理的消息名集合(對(duì)外接口)第十七頁(yè),共五十頁(yè),編輯于2023年,星期五
3、對(duì)象的特點(diǎn)
1)以數(shù)據(jù)為中心 2)對(duì)象是主動(dòng)的 3)實(shí)現(xiàn)了數(shù)據(jù)封裝 4)本質(zhì)上具有并行性 5)模塊獨(dú)立性好第十八頁(yè),共五十頁(yè),編輯于2023年,星期五1、類(Class)
類是對(duì)具有相同數(shù)據(jù)和相同操作的一組相似對(duì)象的定義,類是對(duì)具有相同屬性和行為的一個(gè)或多個(gè)對(duì)象的描述(抽象)。 例如:在屏幕上不同位置用不同顏色不同半徑畫三個(gè)圓,是三個(gè)不同的對(duì)象,但他們有相同的數(shù)據(jù)(圓心坐標(biāo),半徑,顏色)和相同的操作(顯示自己,放大縮小半徑,在屏幕上移動(dòng)位置等),因此它們是同一類事物,可用“Circle類”來定義。
(二)其他概念第十九頁(yè),共五十頁(yè),編輯于2023年,星期五2、實(shí)例(Instance)
實(shí)例就是由某個(gè)特定的類所描述的一個(gè)具體的對(duì)象。 類在現(xiàn)實(shí)世界中并不能真正存在。如:在地球上并沒有抽象的“中國(guó)人”,只有一個(gè)個(gè)具體的中國(guó)人(張三、李四)。同樣也沒有抽象的“圓”,只有一個(gè)個(gè)具體的圓(圓心在(100,200)半徑為50的紅色顯示的圓,圓心在(200,300)半徑為30的蘭色顯示的圓)。 實(shí)際上,類是建立對(duì)象的“樣板”,按照這個(gè)樣板所建立的一個(gè)具體的對(duì)象,就是類的實(shí)際例子,通常稱為實(shí)例。
第二十頁(yè),共五十頁(yè),編輯于2023年,星期五3、消息(Message)
消息,就是要求某個(gè)對(duì)象執(zhí)行在定義它的那個(gè)類中所定義的某個(gè)操作的規(guī)格說明。通常一個(gè)消息由下述三部分組成: 接受消息的對(duì)象; 消息選擇符(消息名); 零個(gè)或多個(gè)變?cè)?;例如:MyCircle是一個(gè)半徑4,圓心位于(100,200)的Circle類的對(duì)象,也就是Circle類的一個(gè)實(shí)例。 當(dāng)要求它以綠色顯示時(shí),在C中應(yīng)發(fā)出以下消息:MyCircle.Show(Green);
其中:MyCircle是接受消息的對(duì)象的名字;
Show是消息選擇符(消息名);
Green是消息的變?cè)?當(dāng)MyCircle接受到這個(gè)消息后,將執(zhí)行在Circle類中定義的Show操作。第二十一頁(yè),共五十頁(yè),編輯于2023年,星期五4、方法(Method)
方法就是對(duì)象所能執(zhí)行的操作,也就是類中定義的服務(wù)。方法描述了對(duì)象執(zhí)行操作的算法,響應(yīng)消息的方法。(在C++中,把方法稱為成員函數(shù))例如:為了Circle類的對(duì)象能夠響應(yīng)讓它在屏幕上顯示自己的消息Show(Green),在Circle類必須給出成員函數(shù)Show(int
color)的定義,(也就是要給出這個(gè)成員函數(shù)的實(shí)現(xiàn)代碼)。第二十二頁(yè),共五十頁(yè),編輯于2023年,星期五5、屬性(Attribute)
屬性,就是類中所定義的數(shù)據(jù),它是對(duì)客觀世界中的實(shí)體所具有的性質(zhì)的抽象。類的每個(gè)實(shí)例都有自己特有的屬性值。例如:Circle類中定義的代表圓心坐標(biāo)、半徑、顏色等的數(shù)據(jù)成員,就是圓的屬性。第二十三頁(yè),共五十頁(yè),編輯于2023年,星期五屬性:姓名 年齡 單位 職稱 工資操作:調(diào)工資 評(píng)職稱 受聘方法:調(diào)工資(計(jì)算公式) 評(píng)職稱(步驟,條件)類:教師數(shù)據(jù)結(jié)構(gòu)方法體狀態(tài):李偉 25 計(jì)算機(jī) 講師 1000行為:調(diào)工資 評(píng)職稱 受聘李偉.調(diào)工資(…)數(shù)據(jù)值執(zhí)行的操作人事處向?qū)ο蟀l(fā)消息抽象方法名(參數(shù))抽象實(shí)例對(duì)象:李偉抽象實(shí)例對(duì)象、類和消息傳遞第二十四頁(yè),共五十頁(yè),編輯于2023年,星期五6、封裝(Encapsulation)
面向?qū)ο蟮某绦蛑邪褦?shù)據(jù)和實(shí)現(xiàn)操作的代碼集中起來放在對(duì)象內(nèi)部。 使用一個(gè)對(duì)象的時(shí)候,只需知道它向外界提供的接口形式,而無需知道它的數(shù)據(jù)結(jié)構(gòu)細(xì)節(jié)和實(shí)現(xiàn)操作的算法。 具有封裝性的條件: (1)有一個(gè)清晰的邊界; (2)有明確的接口; (3)受保護(hù)的內(nèi)部實(shí)現(xiàn)。第二十五頁(yè),共五十頁(yè),編輯于2023年,星期五7、繼承(Inheritance)
廣義地說,繼承是指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們。在面向?qū)ο蟮能浖夹g(shù)中,繼承是子類自動(dòng)地共享基類中定義的數(shù)據(jù)和方法的機(jī)制。第二十六頁(yè),共五十頁(yè),編輯于2023年,星期五A的操作A的變量類A類AA的實(shí)例變量A的實(shí)例a1B的操作B的變量類B:A的子類從A繼承特性繼承來的A的實(shí)例變量B的實(shí)例變量B的實(shí)例b1類B.子類父類的實(shí)例父類子類的實(shí)例
繼承具有傳遞性,如果類C繼承類B,類B繼承類A,則類C繼承類A。圖4.3實(shí)現(xiàn)繼承機(jī)制的原理第二十七頁(yè),共五十頁(yè),編輯于2023年,星期五8、多態(tài)性(Polymorphism)
來自于希臘語(yǔ),意思是“有許多特性”。 多態(tài)性是指子類對(duì)象可以象父類對(duì)象那樣使用,同樣的消息可以發(fā)送給父類對(duì)象也可以發(fā)送給子類對(duì)象。在類的不同層次中可以共享(公用)一個(gè)行為(方法)的名字,然而不同層次中的每個(gè)類卻各自按自己的需要來實(shí)現(xiàn)這個(gè)行為。 多態(tài)性機(jī)制不僅增加了面向?qū)ο筌浖到y(tǒng)的靈活性,進(jìn)一步減少了數(shù)據(jù)冗余,而且顯著提高了軟件的可重用性和可擴(kuò)充性。第二十八頁(yè),共五十頁(yè),編輯于2023年,星期五9、重載(OverLoading) 1)函數(shù)重載:是指同一作用域內(nèi)若干個(gè)參數(shù)特征不同的函數(shù)可以使用相同的函數(shù)名字; 2)運(yùn)算符重載:是指同一個(gè)運(yùn)算符可以施加于不同類型的操作數(shù)上面。 在C++語(yǔ)言中,函數(shù)重載是通過靜態(tài)聯(lián)編實(shí)現(xiàn)的,編譯時(shí)根據(jù)函數(shù)變?cè)膫€(gè)數(shù)和類型,決定到底使用函數(shù)的哪個(gè)實(shí)現(xiàn)代碼;運(yùn)算符重載也是載編譯時(shí)根據(jù)操作數(shù)的類型,決定使用該運(yùn)算符的哪種語(yǔ)義。第二十九頁(yè),共五十頁(yè),編輯于2023年,星期五
所謂建模,就是為了理解事物而對(duì)事物做出的一種抽象,是對(duì)事物的一種無歧義的書面描述。通常,模型是由一組圖示符號(hào)和組織這些符號(hào)的規(guī)則組成,利用她們來定義和描述問題域中的術(shù)語(yǔ)和概念。 模型是一種思考工具,利用這種工具可以把知識(shí)規(guī)范地表示出來。 模型通過把系統(tǒng)的重要部分分解成人的頭腦一次能處理的若干子部分,從而減少系統(tǒng)的復(fù)雜程度; 在對(duì)目標(biāo)系統(tǒng)進(jìn)行分析的初始階段,棉隊(duì)大量模糊的、涉及眾多專業(yè)領(lǐng)域的、錯(cuò)綜復(fù)雜的信息,系統(tǒng)分析員往往感到無從下手,模型提高了組織大量信息的一種有效機(jī)制。第三節(jié)對(duì)象模型第三十頁(yè),共五十頁(yè),編輯于2023年,星期五
用面向?qū)ο蠓椒ㄩ_發(fā)軟件,通常需要建立三種形式的模型:
對(duì)象模型:描述系統(tǒng)的數(shù)據(jù)結(jié)構(gòu);
動(dòng)態(tài)模型:描述系統(tǒng)的控制結(jié)構(gòu);
功能模型:描述系統(tǒng)功能。
一個(gè)典型的軟件系統(tǒng)組合了上述三個(gè)方面的內(nèi)容:它使用數(shù)據(jù)結(jié)構(gòu)(對(duì)象模型),執(zhí)行操作(動(dòng)態(tài)模型),并完成數(shù)據(jù)值的變化(功能模型)。
用面向?qū)ο蠓椒ㄩ_發(fā)軟件,在任何情況下,對(duì)象模型始終都是最重要、最基本、最核心的。第三十一頁(yè),共五十頁(yè),編輯于2023年,星期五
對(duì)象模型表示靜態(tài)的、結(jié)構(gòu)化的系統(tǒng)的“數(shù)據(jù)”性質(zhì)。為建立動(dòng)態(tài)模型和功能模型提供了實(shí)質(zhì)性的框架。 現(xiàn)有的建立對(duì)象模型的表示方法包含下列符號(hào): 表示類的符號(hào)(應(yīng)該既能表示屬性又能表示服務(wù)); 表示對(duì)象(類實(shí)例)的符號(hào): 表示繼承關(guān)系的符號(hào); 表示類和(或)對(duì)象間其他關(guān)系的符號(hào);第三十二頁(yè),共五十頁(yè),編輯于2023年,星期五1、類---&---對(duì)象
“類---&---對(duì)象”是一個(gè)專用術(shù)語(yǔ),含義是“一個(gè)類及屬于該類的對(duì)象”。(一)表示類---&---對(duì)象的符號(hào)
表示類---&---對(duì)象的圖形符號(hào)表示類的圖形符號(hào)(虛線框代表屬于該類的對(duì)象)類名服務(wù)屬性類名服務(wù)屬性圖6.4表示符號(hào)第三十三頁(yè),共五十頁(yè),編輯于2023年,星期五2、命名 命名應(yīng)遵守的三條規(guī)則: 1)使用標(biāo)準(zhǔn)術(shù)語(yǔ); “交通信號(hào)燈”比“信號(hào)單元”好; “傳送帶”比“零件傳送設(shè)備”好 2)使用具有確切含義的名詞; “庫(kù)房”比“房屋”或“存物場(chǎng)所”更確切; 3)必要時(shí)用名詞短語(yǔ)做名字; “最小的領(lǐng)土單元”,“公司員工”等。第三十四頁(yè),共五十頁(yè),編輯于2023年,星期五1、歸納關(guān)系
一般和特殊的關(guān)系,它反映了一個(gè)類和若干個(gè)互不相容的子類之間的分類關(guān)系。高層類(基類)說明一般性的屬性;低層類(派生類)說明特殊屬性。(二)表示結(jié)構(gòu)的圖形符號(hào)一般化類具體類1具體類2..圖4.5表示歸納關(guān)系的圖形符號(hào)第三十五頁(yè),共五十頁(yè),編輯于2023年,星期五2、組合關(guān)系
就是“整體和部分”“關(guān)系,它反映了對(duì)象之間的構(gòu)成關(guān)系。(也稱聚集關(guān)系)。
整體部分1部分21,m0,n圖4.6表示組合關(guān)系的圖形符號(hào)第三十六頁(yè),共五十頁(yè),編輯于2023年,星期五教材封面前言目錄章節(jié)習(xí)題1,m1,n圖4.7描繪教材結(jié)構(gòu)的聚集樹第三十七頁(yè),共五十頁(yè),編輯于2023年,星期五3、關(guān)聯(lián)關(guān)系
反映對(duì)象之間相互依賴、相互作用的關(guān)系。通常把兩類對(duì)象之間的二元關(guān)系再細(xì)分為一對(duì)一、一對(duì)多、多對(duì)多等三種基本類型。 1)表示符號(hào):用相互依賴、相互作用的兩個(gè)對(duì)象之間的連線表示。 2)階:參與關(guān)聯(lián)的對(duì)象的個(gè)數(shù)。 3)鏈屬性:關(guān)聯(lián)鏈的性質(zhì)。 4)限定:一個(gè)受限的關(guān)聯(lián)由兩個(gè)對(duì)象及一個(gè)限定詞組成??砂严薅ㄔ~看作一種特殊的鏈屬性。利用限定詞能有效地減少關(guān)聯(lián)的階數(shù)。 5)消息連接:反映一個(gè)對(duì)象對(duì)另一個(gè)對(duì)象的處理依賴性。第三十八頁(yè),共五十頁(yè),編輯于2023年,星期五教師書1+圖6.8教師與屬于他的書之間的關(guān)聯(lián)關(guān)系文件用戶1+圖4.9鏈屬性的表示方法1+訪問權(quán)限第三十九頁(yè),共五十頁(yè),編輯于2023年,星期五文件文件名目錄圖4.10一個(gè)受限的關(guān)聯(lián)發(fā)送者接受者圖4.11消息連接的表示符號(hào)第四十頁(yè),共五十頁(yè),編輯于2023年,星期五例子
某公司有許多部門,部門名唯一地確定一個(gè)部門;每個(gè)部門由一名經(jīng)理管理,也有的經(jīng)理并不管理任何一個(gè)部門;每個(gè)部門生產(chǎn)多種產(chǎn)品,每種產(chǎn)品僅由一個(gè)部門生產(chǎn)。該公司有許多名員工為之工作,員工又進(jìn)一步劃分為經(jīng)理和工人兩類。每名工人可參加多個(gè)工程項(xiàng)目,每個(gè)項(xiàng)目需要多名工人;每位經(jīng)理可以主持多個(gè)項(xiàng)目,每個(gè)項(xiàng)目?jī)H有一人主持。相應(yīng)的對(duì)象模型如下。第四十一頁(yè),共五十頁(yè),編輯于2023年,星期五員工姓名地址身份證號(hào)碼工資工人經(jīng)理..項(xiàng)目項(xiàng)目名預(yù)算優(yōu)先級(jí)公司名字電話號(hào)碼主要產(chǎn)品地址部門名部門產(chǎn)品產(chǎn)品名成本重量服務(wù)1+1+1+1+1+參加主持管理0,1生產(chǎn)為之工作第四十二頁(yè),共五十頁(yè),編輯于2023年,星期五
動(dòng)態(tài)模型表示瞬時(shí)的、行為化的系統(tǒng)的”控制“性質(zhì),它規(guī)定了對(duì)象模型中的對(duì)象的合法變化序列。 一旦建立起對(duì)象模型之后,就需要考察對(duì)象的動(dòng)態(tài)行為。通常,用狀態(tài)圖來描繪對(duì)象的狀態(tài)、觸發(fā)狀態(tài)轉(zhuǎn)換的事件、以及對(duì)象的行為(對(duì)事件的響應(yīng))。 每個(gè)類的動(dòng)態(tài)行為用一張狀態(tài)圖來描繪,各個(gè)類的狀態(tài)圖通過共享事件合并起來,從而構(gòu)成系統(tǒng)的動(dòng)態(tài)模型。動(dòng)態(tài)模型是基于事件共享而互相關(guān)聯(lián)的一組狀態(tài)圖的集合。第四節(jié)動(dòng)態(tài)模型第四十三頁(yè),共五十頁(yè),編輯于2023年,星期五1、事件
事件是某個(gè)特定時(shí)刻所發(fā)生的事情,它是對(duì)引起對(duì)象從一種狀態(tài)轉(zhuǎn)換到另一種狀態(tài)的現(xiàn)實(shí)世界中的事件的抽象。時(shí)間沒有持續(xù)時(shí)間,是瞬間完成的。(事件就是引起對(duì)象狀態(tài)轉(zhuǎn)換的控制信息)。2、狀態(tài)
狀態(tài)就是對(duì)象在其生命周期中的某個(gè)特定階段所處的某種情形,它是對(duì)影響對(duì)象行為的屬性值的一種抽象。 狀態(tài)有持續(xù)性,它占用一段時(shí)間間隔。 狀態(tài)和事件密不可分,一個(gè)事件可分為兩個(gè)狀態(tài),一個(gè)狀態(tài)隔開兩個(gè)事件。事件表示時(shí)刻,狀態(tài)表示時(shí)間間隔。3、行為
行為是指對(duì)象達(dá)到某種狀態(tài)時(shí)所做的一系列處理操作。(一)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度汽修廠修理工績(jī)效激勵(lì)合同
- 二零二五年度房屋買賣合同稅收優(yōu)惠政策協(xié)議
- 二零二五年度汽車美容院加盟市場(chǎng)拓展合同
- 浙江國(guó)企招聘2024臺(tái)州溫嶺市嶺獅貿(mào)易有限公司招聘3人筆試參考題庫(kù)附帶答案詳解
- ?2024年下半年浙江甌海城市建設(shè)投資集團(tuán)有限公司招聘總及預(yù)備閱讀模式筆試參考題庫(kù)附帶答案詳解
- 2025廣東佛山市三水海江昇平建設(shè)工程有限公司第一批招聘企業(yè)人員27人筆試參考題庫(kù)附帶答案詳解
- 2025年移動(dòng)通訊用數(shù)字程控交換機(jī)項(xiàng)目合作計(jì)劃書
- 2024重慶重慶長(zhǎng)壽投資發(fā)展集團(tuán)有限公司下屬子公司招聘7人筆試參考題庫(kù)附帶答案詳解
- 江蘇財(cái)稅知識(shí)培訓(xùn)課件
- 水果農(nóng)藥知識(shí)培訓(xùn)課件
- 刻度尺讀數(shù)練習(xí)(自制)課件
- 四年級(jí)下冊(cè)美術(shù)課件 4紙卷魔術(shù)|蘇少版
- 三年級(jí)下冊(cè)豎式脫式計(jì)算
- 七年級(jí)數(shù)學(xué)蘇科版下冊(cè) 101 二元一次方程 課件
- 《財(cái)務(wù)風(fēng)險(xiǎn)的識(shí)別與評(píng)估管理國(guó)內(nèi)外文獻(xiàn)綜述》
- ??谑写媪糠抠I賣合同模板(范本)
- 經(jīng)典文學(xué)作品中的女性形象研究外文文獻(xiàn)翻譯2016年
- 高爐煤氣安全知識(shí)的培訓(xùn)
- 2008 年全國(guó)高校俄語(yǔ)專業(yè)四級(jí)水平測(cè)試試卷
- 需求供給與均衡價(jià)格PPT課件
- 金融工程鄭振龍課后習(xí)題答案
評(píng)論
0/150
提交評(píng)論