面向?qū)ο蠓治雠c設(shè)計試題B卷_第1頁
面向?qū)ο蠓治雠c設(shè)計試題B卷_第2頁
面向?qū)ο蠓治雠c設(shè)計試題B卷_第3頁
面向?qū)ο蠓治雠c設(shè)計試題B卷_第4頁
面向?qū)ο蠓治雠c設(shè)計試題B卷_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、面向?qū)ο蠓治雠c設(shè)計試題B卷一、單項選擇題(在每小題的四個備選答案中,選出一個正確答案,并將正確答案的序號填在題干的括號內(nèi)。每小題2分,共20分)1 .到20世紀(jì)末,面向?qū)ο筌浖こ桃呀?jīng)逐漸發(fā)展成熟,特別是(D)的形成和廣泛使用,采用面向?qū)ο蠓治雠c編程的軟件開發(fā)方法已成為軟件開發(fā)的主流方法。A.Simula67語言B.Smalltalk語言C.Java語言D.統(tǒng)一建模語言(UML)的標(biāo)準(zhǔn)2 .面向?qū)ο蟮倪\動產(chǎn)生了多種面向?qū)ο蟮恼Z言,其中(C)是一種混合性面向?qū)ο笳Z言既支持面向過程的程序設(shè)計方法,又支持面向?qū)ο蟮某绦蛟O(shè)計方法,有廣泛應(yīng)用的基礎(chǔ)和豐富開發(fā)環(huán)境的支持,因而使面向?qū)ο蟮某绦蛟O(shè)計能得到很快

2、普及。A.SmalltalkB.EiffelC.C+D.Java3 .下列不屬于面向?qū)ο蠹夹g(shù)的基本特征的是(B)。A.封裝性B.模塊性C.多態(tài)性D.繼承性4 .面向?qū)ο蟪绦蛟O(shè)計將描述事物的數(shù)據(jù)與(C)封裝在一起,作為一個相互依存、不可分割的整體來處理。A.信息B.數(shù)據(jù)隱藏C.對數(shù)據(jù)的操作D.數(shù)據(jù)抽象5 .關(guān)于面向?qū)ο蠓椒ǖ膬?yōu)點,下列不正確的敘述是(C)。A.與人類習(xí)慣的思維方法比較一致B.可重用性好C.以數(shù)據(jù)操作為中心D.可維護(hù)性好6 .(D)是從用戶使用系統(tǒng)的角度描述系統(tǒng)功能的圖形表達(dá)方法。A.類圖B.對象圖C.序列圖D.用例圖7 .(C)是表達(dá)系統(tǒng)類及其相互聯(lián)系的圖示,它是面向?qū)ο笤O(shè)計的核

3、心,建立狀態(tài)圖、協(xié)作圖和其他圖的基礎(chǔ)。A.對象圖B.組件圖C.類圖D.配置圖8 .(D)描述了一組交互對象間的動態(tài)協(xié)作關(guān)系,它表示完成某項行為的對象和這些對象之間傳遞消息的時間順序。A.對象圖B.協(xié)作圖C.狀態(tài)圖D.序列圖9 .(D)就是用于表示構(gòu)成分布式系統(tǒng)的節(jié)點集和節(jié)點之間的聯(lián)系的圖示,它可以表示系統(tǒng)中軟件和硬件的物理架構(gòu)。A.組件圖B.協(xié)作圖C.狀態(tài)圖D.配置圖10 .使用UML進(jìn)行關(guān)系數(shù)據(jù)庫的(B)時,需要設(shè)計出表達(dá)持久數(shù)據(jù)的實體類及其聯(lián)系,并把它們映射成為關(guān)系數(shù)據(jù)庫表(Table)、視圖(View)等。A.業(yè)務(wù)UseCase模型設(shè)計B.邏輯數(shù)據(jù)模型設(shè)計C.物理數(shù)據(jù)模型設(shè)計C.物理實現(xiàn)

4、設(shè)計、填空題(每空1分,共20分)1 .面向?qū)ο箝_發(fā)方法一改過去傳統(tǒng)的以功能分析_為基礎(chǔ)的面向?qū)ο蟮慕Y(jié)構(gòu)化分析與設(shè)計方法,它模擬人們理解和處理客觀世界的方式來分析問題,把系統(tǒng)視為一系列對象的集合,其面向?qū)ο蟮脑O(shè)計_又將分析的結(jié)果映射到某種面向?qū)ο髮崿F(xiàn)工具的結(jié)構(gòu)上,使映射過程有著比較直接的對應(yīng)關(guān)系,使分析者、設(shè)計者和編程者都可使用相同的概念,從而使面向?qū)ο蟮能浖_發(fā)能比較自然地模擬客觀世界的活動,使問題描述空間與解空間在結(jié)構(gòu)上盡可能一致。因此,采用面向?qū)ο蠓椒梢愿行У亻_發(fā)大型軟件系統(tǒng)。面向?qū)ο蠓椒ǖ囊环庋b、_繼承、_多態(tài)等機(jī)制不僅支持軟件復(fù)用,而且使軟件維護(hù)工作可靠有效,可實現(xiàn)軟件系統(tǒng)的柔性

5、制造,更好地克服軟件危機(jī)。因此,它已成為成熟的廣為采用的軟件開發(fā)方法。2 .對象是客觀實體的抽象表示,是由描述對象屬性的數(shù)據(jù)和對這些數(shù)據(jù)進(jìn)行的操作行為_兩部分組成。而_類是對具有相同屬性和行為的一組對象的抽象描述。因此,它可作為一種用戶自定義類型和創(chuàng)建對象的樣板,而按照這種樣板所創(chuàng)建的一個個具體對象就是類的實例_。通過繼承關(guān)系又可形成一種類層次結(jié)構(gòu)。3 .UML中用于描述系統(tǒng)的靜態(tài)建模的視圖稱為靜態(tài)視圖,包括類圖,對象圖,用例圖,組件圖,配置圖三、寫出下列程序的輸出結(jié)果。(滿分10分)#include#includeclassPersonpublic:Person(char*s)name=ne

6、wcharstrlen(s)+1;strcpy(name,s);virtualvoidprint()coutMynameis”nameendl;protected:char*name;classStudent:publicPersonpublic:Student(char*s,floatg):Person(s)avg=g;voidprint(char*s)couts”Mynameis“name”andmygradeis”avgendl;private:floatavg;classprofessor:publicPersonpublic:Professor(char*s,intn):Person

7、(s)publs=n;voidprint()cout”Mynameis”name”andIhave”publs”publication.”print();p=&y;p-print();p=&z;p-print();【運行結(jié)果:MynameisZhangMynameisWangMynameisLiuandIhave5publications.】四.簡答題(每小題5分,共20分)1. 簡述面向?qū)ο筌浖_發(fā)方法的優(yōu)點。答: 把軟件系統(tǒng)看成是各種對象的集合,這更接近人類的思維方式。 軟件需求的變動往往是功能的變動,而功能的執(zhí)行者對象一般不會有大的變換。這使得按照對象設(shè)計出來的系統(tǒng)結(jié)構(gòu)比較穩(wěn)定。 對象包

8、括屬性(數(shù)據(jù))和行為(方法),對象把數(shù)據(jù)和方法的具體實現(xiàn)方式一起封裝起來,這使得方法和與之相關(guān)的數(shù)據(jù)不再分離,提高了每個子系統(tǒng)的相對獨立性,從而提高了軟件的可維護(hù)性。 支持封裝,抽象,繼承和多態(tài),提高了軟件的可重用性,可維護(hù)性和可擴(kuò)展性。2. 簡述面向?qū)ο蠹夹g(shù)的三大機(jī)制。答:(1)封裝性(encapsulation)所謂封裝就是把對象的屬性和行為結(jié)合成一個獨立的單位,使外界不能直接訪問或修改這些數(shù)據(jù)和代碼,外界只能通過對象提供的接口函數(shù)來改變或獲取對象的屬性數(shù)據(jù),這就實現(xiàn)了消息隱蔽。(2)繼承性如果在一個已定義的類上,增加一些特殊屬性或操作,可以形成一個新的類,這個類不僅繼承了前一個類的全部特

9、征,而且具有新的特性,因此可看作前一個類的特例,是對前一個類的繼承。前一個類稱為父類,新產(chǎn)生的類叫做子類。通過繼承關(guān)系可形成一種類層次結(jié)構(gòu),叫做繼承結(jié)構(gòu)。(3)多態(tài)性在類層次結(jié)構(gòu)的不同類中,可用相同的函數(shù)名實現(xiàn)功能不同的函數(shù)。3 .簡述OOA模型的層次結(jié)構(gòu)。答:OOA模型采用五層次結(jié)構(gòu),它們分別是:(1)對象-類層劃分待開發(fā)系統(tǒng)及其環(huán)境信息的基本構(gòu)造單位,標(biāo)出反映問題域的對象和類,并用符號進(jìn)行規(guī)范的描述,用信息提供者熟悉的術(shù)語為對象和類命名。)(2)屬性層定義對象和某些結(jié)構(gòu)中的數(shù)據(jù)單元,繼承結(jié)構(gòu)中所有類的公共屬性可放于通用類中。標(biāo)識對象類必需的屬性并放在合適的繼承層次上,屬性的特殊限制和實例連

10、接關(guān)系也應(yīng)標(biāo)識出來。(3)服務(wù)層表示對象的服務(wù)或行為,即是要定義類上的操作。(4)結(jié)構(gòu)層標(biāo)識現(xiàn)實世界中對象之間的關(guān)系。當(dāng)一個象是另一個對象的一部分時,用”整體-部分”關(guān)系表示;當(dāng)一個類屬于另一個類時,用類之間繼承關(guān)系表示。(5)主題層可將相關(guān)類或?qū)ο髣澐譃橐粋€主題。4 .簡述OOD模型的總體結(jié)構(gòu),并畫圖表示。答案:OOD體系結(jié)構(gòu)的各個部分內(nèi)容:(1)問題論域部分,在OOA模型的基礎(chǔ)上,細(xì)化分析結(jié)果,設(shè)計一組構(gòu)成底層應(yīng)用模型的類和對象。(2)人機(jī)交互部分:設(shè)計用戶界面模型,該用戶界面模型中的類和對象提供實現(xiàn)人機(jī)交互操作的接口函數(shù)。用戶界面設(shè)計包括菜單設(shè)計、窗口設(shè)計、輸入/輸出界面設(shè)計等等。(3)

11、任務(wù)管理部分:建立一些類,用以負(fù)責(zé)處理操作系統(tǒng)級的并發(fā)問題、中斷、調(diào)度以及其它與特定平臺有關(guān)的問題。(4)數(shù)據(jù)管理部分:提供數(shù)據(jù)管理系統(tǒng)中存儲和檢索對象的基本結(jié)構(gòu),包括對永久性數(shù)據(jù)的訪問和管理。數(shù)據(jù)管理設(shè)計包括:數(shù)據(jù)存放設(shè)計:數(shù)據(jù)存放設(shè)計選擇數(shù)據(jù)存放的方式(文件存放、關(guān)系數(shù)據(jù)庫表格存放或面向?qū)ο蟮臄?shù)據(jù)庫存放)。一設(shè)計相應(yīng)的操作。為每個需要存儲的對象和類增加用于存儲管理的屬性和操作,在類和對象的定義中加以描述。class & object layer(類及對象層)attribute layer(類及對象層)service layer(服務(wù)層 )實例連接消息產(chǎn)類邊界I Ik.實例邊界It查詢課程信

12、息查詢學(xué)生成績選課注冊五.試用UML對教學(xué)管理系統(tǒng)及相關(guān)的數(shù)據(jù)庫系統(tǒng)進(jìn)行分析和設(shè)計。學(xué)生選課系統(tǒng)一般包才(1)選課管理功能;(2)成績管理功能。試完成下列工作:(1)建立系統(tǒng)靜態(tài)結(jié)構(gòu)模型一畫出系統(tǒng)用例圖和類圖;(10分)(2)建立系統(tǒng)動態(tài)結(jié)構(gòu)模型一畫出系統(tǒng)序列圖和協(xié)作圖;(10分)(3)建立關(guān)系數(shù)據(jù)庫邏輯模型。(10分)答案:(1)系統(tǒng)用例圖如下O一查詢課程成績管理學(xué)生信息管理課程信息管理開設(shè)課程學(xué)生成績管理成績統(tǒng)計(a)選課管理的用例圖(b)成績管理的用例圖對象類圖如下:(a)選課對象類圖開設(shè)課程 課程名 授課日期 授課時間 地點指定老師() 學(xué)生滿否()學(xué)生成績登記學(xué)生名學(xué)期 課程名 成績加入成績()打印0:(b)成績管理對象類圖成績統(tǒng)計1

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論