俄罗斯小YOUNV另类_玩弄放荡人妻少妇系列 _国产美女遭强高潮网站_亚洲午夜性猛春交XXXX_久久99亚洲网美利坚合众国_国产普通话对白刺激_国产免费AV一区二区三区_精品无人区麻豆乱码1区2区

東大22年12月考試《軟件設計模式X》考核作業(yè)【資料答案】

可做奧鵬全部院校在線離線作業(yè)畢業(yè)論文QQ:3230981406 微信:aopopenfd777

發(fā)布時間:2022/11/18 19:20:02來源:admin瀏覽: 1 次

東 北 大 學 繼 續(xù) 教 育 學 院

 軟件設計模式 X   試 卷(作業(yè)考核 線上2)  A  卷(共  7   頁)     

總分 題號

  得分   一、單選題(共40分,每題2分)

1. 常用的基本設計模式可分為()

A.創(chuàng)建型、結構型和行為型   B. 對象型、結構型和行為型

C.過程型、結構型和行為型   D. 抽象型、接口型和實現(xiàn)型

2. 對以下開閉原則的描述錯誤的是()

A.開閉原則與“對可變性的封裝原則”沒有相似性

B.找到個系統(tǒng)的可變元素,將它封裝起來,叫開閉原則

C.對修改關閉,是其原則之一

D.從抽象層導出一個或多個新具體類可以改變系統(tǒng)的行為,是其原則之一

3. “不要和陌生人說話”是()原則的通俗表述。

A. 接口隔離  B. 里氏替換  C. 依賴倒置  D. 迪米特

4. 當創(chuàng)建一個具體的對象而又不希望指定具體的類時,可以使用()

A. 結構型  B. 創(chuàng)建型  C. 行為型  D.以上都可以

5. 以下( )是利用一個對象,快速地生成一批對象。

A. 抽象工廠(Abstract Factory)模式  B. 原型(Prototype)模式

C. 合成(Composite)模式             D. 橋接(Bridge)模式

6. 以下( )用來描述建造者( Builder )。

A. 定義一個用于創(chuàng)建對象的接口,讓子類決定實例化哪一個類

B. 將一個復雜對象的構建與它的表示分離,使得同樣的構建過程可以創(chuàng)建不同的表示

C. 保證一個類僅有一個實例,并提供→個訪問它的全周訪問點

D. 運用共享技術有效地支持大量細粒度的對象

7. 以下( )用來描述工廠方法(Factory Method)模式。

A. 提供一個創(chuàng)建一系列相關或相互依賴對象的接口,而無須指定它們具體的類

B. 表示一個作用于某對象結構中的各元素的操作。它使用戶可以在不改變各元素的類的前提下定義作用于這些元素的新操作

C. 定義一個用于創(chuàng)建對象的接口,讓子類決定實例化哪一個類。該模式使一個類的實例化延遲到其子類

D. 定義一系列的算法,把它們一個個封裝起來,并且使它們可相互替換。本模式使得算法可獨立于使用它的客戶而變化

8. 對象適配器模式是( )原則的典型應用。

A. 將一個類的接口轉換成客戶希望的另外一個接口,本模式使原本由于接口不兼容而不能一起工作的那些類可以一起工作。

B. 定義一個用于創(chuàng)建對象的接口,讓子類決定實例化哪一個類

C. 表示一個作用于某對象結構中的各元素的操作,它使用戶可以在不改變各元素的類的前提下定義作用于這些元素的新操作

D. 將一個請求封裝為一個對象,從而使用戶可用不同的請求對客戶進行參數(shù)化; 對請求排隊或記錄請求日志,以及支持可撤銷的操作

9. 關于模式適用性,以下( )不適合使用Flyweight(享元)模式。

A. 一個應用程序使用了大量的對象

B. 完全由于使用大量的對象, 造成很大的存儲開銷

C. 對象的大多數(shù)狀態(tài)都可變?yōu)橥獠繝顟B(tài)

D. 用戶想使用一個已經存在的類,而它的接口不符合用戶的需求

10. 如果有一個2MB 的文本(英文字母),為了對其中的字母進行分類和計數(shù),若為文本中的每個字母都定義一個對象顯然不合實際,對與該問題最好可使用的模式是( )。

A. 裝飾(Decorator)模式  B. 享元( Flyweight )模式 

C. 合成(Composite)模式  D.命令(Command)模式

11. 關于模式適用性, 以下( )適合使用組合(Composite) 模式。

A. 用戶想使用一個已經存在的類, 而它的接口不符合用戶的需求

B. 當一個類的實例只能有幾個不同狀態(tài)組合中的一種時

C. 用戶想表示對象的部分-整體層次結構

D. 一個對象的行為取決于它的狀態(tài), 并且它必須在運行時根據(jù)狀態(tài)改變它的行為

12. 以下意圖( )可用來描述命令(Command)。

A. 將一個請求封裝為一個對象,從而使用戶可用不同的請求對客戶進行參數(shù)化; 對請求排隊或記錄請求日志,以及支持可撤銷的操作

B.定義一系列的算法,把它們一個個封裝起來, 并且使它們可相互替換, 本模式使得算法可獨立于使用它的客戶而變化

C. 為其他對象提供一種代理以控制對這個對象的訪問

D. 保證一個類僅有一個實例,并提供一個訪問它的全局訪問點

13. 以下不屬于行為型模式的是( )。

A.命令(Command )  B.策略(Strategy) C. 備忘錄(Memento )  D.橋接(Bridge )

14. 關于模式適用性, 以下( )不適合使用模板方法(Template Method) 模式。

A. 一次性實現(xiàn)-個算法的不變的部分,并將可變的行為留給子類來實現(xiàn)

B. 當對一個對象的改變需要同時改變其他對象,而不知道具體有多少對象有待改變

C. 各子類中公共的行為應被提取出來并集中到一個公共父類中以避免代碼重復。首先識別現(xiàn)有代碼中的不同之處,并且將不同之處分離為新的操作。最后,用一個調用這些新的操作的模板方法來替換這些不同的代碼

D.控制子類擴展。模板方法只在特定點調用“hook”操作,這樣就只允許在這些點進行擴展

15. 關于模式適用性,( )不適合使用職責鏈(Chain of Responsibility)模式。

A. 有多個的對象可以處理一個請求,哪個對象處理該請求運行時刻自動確定

B. 在需要用比較通用和復雜的對象指針代替簡單的指針的時候

C. 用戶想在不明確指定接收者的情況下,向多個對象中的一個提交一個請求

D. 可處理一個請求的對象集合應被動態(tài)指定

16. 以下意圖( )可用來描述中介者(Mediator) 。

A. 提供一種方法順序訪問一個聚合對象中各個元素,而又不需暴露該對象的內部表示

B. 將抽象部分與它的實現(xiàn)部分分離, 使它們都可以獨立變化

C. 定義一個用于創(chuàng)建對象的接口,讓子類決定實例化哪一個類

D. 用-個中介對象來封裝一系列的對象交互

17. 以下意圖( )可用來描述解釋器(Interpreter)。

A. 將抽象部分與它的實現(xiàn)部分分離,使它們都可以獨立變化

B. 給定一個語言, 定義它的文法的一種表示,并定義一個解釋器,這個解釋器使用該表示來解釋語言中的句子

C. 將一個復雜對象的構建與它的表示分離,使得同樣的構建過程可以創(chuàng)建不同的表示

D. 為其他對象提供一種代理以控制對這個對象的訪問

18. 以下意圖( )可用來描述訪問者(Visitor )。

A. 定義對象間的一種一對多的依賴關系,當一個對象的狀態(tài)發(fā)生改變時,所有依賴于它的對都得到通知并被自動更新

B. 表示一個作用于某對象結構中的各元素的操作

C. 在不破壞封裝性的前提下,捕獲一個對象的內部狀態(tài),并在該對象之外保存這個狀態(tài),這樣以后就可將該對象恢復到原先保存的狀態(tài)

D. 用原型實例指定創(chuàng)建對象的種類,并且通過復制這些原型創(chuàng)建新的對象

19. 以下意圖( )可用來描述狀態(tài)( State )。

A. 使多個對象都有機會處理請求,從而避免請求的發(fā)送者和接收者之間的精合關系

B. 提供一種方法順序訪問一個聚合對象中各個元素而又不需暴露該對象的內部表示

C. 允許一個對象在其內部狀態(tài)改變時改變它的行為。對象看起來似乎修改了它的類

D. 在不破壞封裝性的前提下,捕獲一個對象的內部狀態(tài),并在該對象之外保存這個狀態(tài),這樣以后就可將該對象恢復到原先保存的狀態(tài)

20. 設計模式具有的優(yōu)點()。

A. 適應需求變化                  B. 程序易于理解

C.減少開發(fā)過程中的代碼開發(fā)工作量 D. 簡化軟件系統(tǒng)的設計

二、多選題(共10分,每題2分)

1. 以下是模式的基本要素的是(     )。

A. 名稱  B. 意圖  C. 解決方案  D. 參與者和協(xié)作者

2. 以下屬于創(chuàng)建型模式的是(      )。

A.抽象工廠(Ab stract Factory)模式  B.合成(Composite) 模式

C. 單例(Singleton)模式            D. 橋接(Bridge)模式

3. 以下關于結構型模式說法正確的是(     )。

A. 結構型模式可以在不破壞類封裝性的基礎上, 實現(xiàn)新的功能

B. 結構型模式主要用于創(chuàng)建一組對象

C. 結構型模式可以創(chuàng)建一組類的統(tǒng)→訪問接口

D. 結構型模式可以在不破壞類封裝性的基礎上, 使類可以同不曾估計到的系統(tǒng)進行交互

4. 以下屬于行為對象模式的是(     )。

A. 裝飾(Decorator)模式   B. 迭代器(Iterator)模式 

C. 命令(Command)模式    D. 中介者(Mediator)模式

5.  下面(    )是訪問者模式的優(yōu)缺點。

A. 訪問者模式使得易于增加新的操作   B. 訪問者集中相關的操作而分離無關的操作

C. 增加新的ConcreteElment 類很困難  D. 通過類層次進行訪問

三、判斷題(共10分,每題1分;請在認為正確的題目后面寫T,錯誤的題目后面寫F)

1. 設計模式的兩大主題是系統(tǒng)復用與系統(tǒng)擴展。(   )

2. 抽象工廠模式提供了一系列相關或相互依賴對象的接口且必須指定他們具體的類。(   )

3. 對象適配器模式是依賴倒轉原則的典型應用。(   )

4. Open-Close原則的含義是一個軟件實體應當對擴展開放,對修改關閉。(   )

5. Singleton(單例)模式屬于結構性模式。(   )

6. 常用的設計模式可分為過程型、創(chuàng)建型和結構型。(    )

7. 對觀察者模式,觸發(fā)事件的對象——Subject對象不需要知道觀察事件的所有對象。(    )

8. 通過在問題領域中使用模式,可以用一種不同的方式來看待問題。(   )

9. 對象適配器模式是依賴倒轉原則的典型應用。(    )

10. Template Method是用以幫助從不同的步驟中抽象出一個通用的過程的模式。(    )

四、名詞解釋(共15分,每題3分)

1. 設計模式

 

 

2. 開閉原則

 

 

3.單一職責原則

 

 

4.依賴關系

 

 

5.組合關系

 

 

 

五、簡答題(共15分,每題5分)

1. 設計模式一般有哪幾個基本要素?

 

 

 

 

 

2. 創(chuàng)建型模式分包括哪幾種設計模式,各是什么并簡要說明。

 

 

 

 

 

 

 

3. 說明訪問者模式的定義與主要優(yōu)缺點。

 

 

 

 

 

 

 

 

 

六、綜合題(共10分)

當“人民幣匯率” 升值時, 進口公司的進口產品成本降低且利潤率提升,出口公司的出口產品收入降低且利潤率降低; 當“人民幣匯率” 貶值時,進口公司的進口產品成本提升且利潤率降低, 出口公司的出口產品收入提升且利潤率提升。利用觀察者模式設計一個程序, 分析“人民幣匯率”的升值或貶值對進口公司的進口產品成本或出口公司的出口產品收入以及公司的利潤率的影響。

提示:這里的匯率(Rate) 類是抽象目標類,它包含了保存觀察者(Company ) 的List 和增加/刪除觀察者的方法, 以及有關匯率改變的抽象方法change(int number); 而人民幣匯率(RMBrate)類是具體目標,它實現(xiàn)了父類的change(int number)方法,即當人民幣匯率發(fā)生改變時通過相關公司; 公司(Company)類是抽象觀察者, 它定義了一個有關匯率反應的抽象方法respons巳(int number); 進口公司( ImportCompany )類和出口公司( E xportCompany )類是具體觀察者類,它們實現(xiàn)了父類的response(int

number)方法, 即當它們接收到匯率發(fā)生改變的通知時作為相應的反應。

請畫出該程序的類圖。

 

 

 

 

 

 



奧鵬,國開,廣開,電大在線,各省平臺,新疆一體化等平臺學習
詳情請咨詢QQ : 3230981406或微信:aopopenfd777

  • 上一篇:
  • 下一篇:
  • 作業(yè)咨詢 論文咨詢
    微信客服掃一掃

    回到頂部