


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、2.1 工廠方法與抽象工廠模式一、在簡單工廠方法模式、工廠方法模式與抽象工廠模式中,哪個模式符合開閉原則?為什么?哪個模式一般不符合開閉原則?或者說明在哪種情況下,開閉原則成立,哪種情況下,開閉原則不成立。答:簡單工廠模式一般不符合開閉原則。在簡單工廠模式中,如果要增加一個新產(chǎn)品類,相應(yīng)地在工廠類中也要增加一個條件語句,用于創(chuàng)建新的產(chǎn)品類的對象。也就是說,必須修改工廠類的源代碼。工廠方法模式和抽象工廠模式符合開閉原則。因為在工廠方法模式和抽象工廠模式中,無需修改或者重新編譯已經(jīng)存在的代碼,就可以添加新的產(chǎn)品類。開閉模式是指對擴展開放,對修改關(guān)閉,說的更通俗點,就是說開發(fā)了一個軟件,應(yīng)該可以對它
2、進行功能擴展(開放),而在進行這些擴展的時候,不需要對原來的程序進行修改(關(guān)閉)。二、圖2.17所示設(shè)計類圖是關(guān)于游戲軟件的設(shè)計。在該設(shè)計中,SlowGameFactory類負責(zé)創(chuàng)建SlowFighter對象與SlowMonster對象,并且將創(chuàng)建完的對象以其超類類型返回給ClientGUI對象。然后,ClientGUI對象將操縱SlowFighter對象與SlowMonster對象,使得它們互相打斗。問題與任務(wù):1、上述設(shè)計使用了什么設(shè)計模式?2、請在以上設(shè)計類圖中添加4個新的類MedFighter、SuperFighter、MedMonster和SuperMonster,以便使得MedFi
3、ghter對象能夠?qū)?yīng)于MedMonster對象;SuperFighter對象能夠?qū)?yīng)于SuperMonster對象,繪制新設(shè)計類圖;3、除了以上添加的4個類以外,在以上類圖中還應(yīng)該添加什么類?4、描述新的設(shè)計類圖;5、明確說明新設(shè)計的優(yōu)點。答:1、上述設(shè)計使用抽象工廠設(shè)計模式。23、 SuperGameFactory MedGameFactory4、 多個抽象產(chǎn)品類,每個抽象產(chǎn)品類可以派生出多個具體產(chǎn)品類。 一個抽象工廠類,可以派生出多個具體工廠類。 每個具體工廠類可以創(chuàng)建多個具體產(chǎn)品類的實例,也就是創(chuàng)建的是一個產(chǎn)品線下的多個產(chǎn)品。5、 工廠方法模式只有一個抽象產(chǎn)品類,而抽象工廠模式有多個。 工廠方法模式的具體工廠類只能創(chuàng)建一個具體產(chǎn)品類的實例,而抽象工廠模式可以創(chuàng)建多個。2.2 生成器模式一、在例2.
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版全國保密教育線上培訓(xùn)考試題庫
- 腫瘤科感控總結(jié)
- 折紙小班藝術(shù)課件
- 職工超市安全亮點工作總結(jié)
- 員工心理健康培訓(xùn)體系構(gòu)建
- 兒科主任年終工作總結(jié)
- 支具固定的護理
- 神經(jīng)系統(tǒng)病人的護理概述
- 培訓(xùn)項目的實施
- 公司人員報銷培訓(xùn)
- GB/T 8195-2011石油加工業(yè)衛(wèi)生防護距離
- GB/T 32151.6-2015溫室氣體排放核算與報告要求第6部分:民用航空企業(yè)
- GB/T 13936-2014硫化橡膠與金屬粘接拉伸剪切強度測定方法
- GB 29837-2013火災(zāi)探測報警產(chǎn)品的維修保養(yǎng)與報廢
- 一例慢阻肺病人護理個案
- 建平中學(xué)自招真題解析
- DB50-T 1293-2022 松材線蟲病疫木除治技術(shù)規(guī)范(標(biāo)準(zhǔn)文本)
- 金屬材料檢驗的標(biāo)準(zhǔn)課件
- 動物疫病流行病學(xué)調(diào)查表診斷送檢用
- 模具技術(shù)要求
- 廣東省公務(wù)員錄用審批表
評論
0/150
提交評論