軟件設(shè)計(jì)模式ch1 - 設(shè)計(jì)模式入門 - 策略模式.ppt_第1頁
軟件設(shè)計(jì)模式ch1 - 設(shè)計(jì)模式入門 - 策略模式.ppt_第2頁
軟件設(shè)計(jì)模式ch1 - 設(shè)計(jì)模式入門 - 策略模式.ppt_第3頁
軟件設(shè)計(jì)模式ch1 - 設(shè)計(jì)模式入門 - 策略模式.ppt_第4頁
軟件設(shè)計(jì)模式ch1 - 設(shè)計(jì)模式入門 - 策略模式.ppt_第5頁
已閱讀5頁,還剩63頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、軟件設(shè)計(jì)方法與設(shè)計(jì)模式,張巨力副教授/系統(tǒng)分析師,設(shè)計(jì)模型入口策略,1、1、2、3、4、5、6,模擬鴨子應(yīng)用,繼承,分離變化與不變化的部分,包裝行為,策略模式,如何使用設(shè)計(jì)模式?主要內(nèi)容:1 .鴨子模擬應(yīng)用、背景、方法、問題、(1)、(2)、(3)、鴨子模擬游戲SimUDuck:各種鴨子在游泳時(shí)呱呱叫,(1)背景,(2)方法,(。(3)問題,我們?cè)撛趺崔k?繼承如何解決上述問題?(1)繼承,但是,(1)繼承,(1)繼承,您可以在繼承的同時(shí)使用接口,(2)接口,(2)接口,那么當(dāng)前的設(shè)計(jì)呢?(2)接口,(2)重復(fù)代碼會(huì)隨著繼承規(guī)模的增加而增加和擴(kuò)展,(3)問題,(3)我該怎么辦?問題,軟件開發(fā)所面

2、臨的問題,如何設(shè)計(jì),軟件開發(fā)所面臨的問題,軟件開發(fā)所面臨的問題(2)如何設(shè)計(jì),其結(jié)果是:代碼更改所造成的后果減少了。該系統(tǒng)更加靈活。(2)如何設(shè)計(jì),取出容易改變的部分,(3)將改變的部分和未改變的部分分開,(3)將改變的部分和未改變的部分分開,以及(4)包裝行為、設(shè)計(jì)行為、實(shí)現(xiàn)行為、進(jìn)一步設(shè)計(jì)。動(dòng)態(tài)行為、(6)、封裝行為、設(shè)計(jì)原則2:為接口而編程,而不是為實(shí)現(xiàn)而編程,(1)設(shè)計(jì)行為,那么duck行為將被放在一個(gè)類中,所以duck類不需要知道行為的實(shí)現(xiàn)細(xì)節(jié)。(a)設(shè)計(jì)行為,為什么不使用抽象類,然后使用多態(tài)性?(1)設(shè)計(jì)行為,例如:(1)設(shè)計(jì)行為,存在問題:為實(shí)現(xiàn)而編程,為接口/超類型而編程,(1

3、)設(shè)計(jì)行為,甚至更好的是,在運(yùn)行時(shí)指定特定的實(shí)現(xiàn)對(duì)象,(1)設(shè)計(jì)行為,兩個(gè)行為接口,以及(2)實(shí)現(xiàn)行為,這充分體現(xiàn)了繼承的優(yōu)點(diǎn),摒棄了它的缺點(diǎn),(2)實(shí)現(xiàn)行為,(2)實(shí)現(xiàn)行為,進(jìn)行集成,使用“委托”方法處理duck行為并添加兩個(gè)實(shí)例變量,(3)進(jìn)一步設(shè)計(jì), 要實(shí)現(xiàn)行為“委托”,(3)要進(jìn)一步設(shè)計(jì),如何設(shè)置行為實(shí)例變量,(3)要進(jìn)一步設(shè)計(jì),那么我們就要看設(shè)計(jì)效果是否達(dá)到。(3)進(jìn)一步設(shè)計(jì),Duck.java,(4)測(cè)試,F(xiàn)lyBehavior.java,(4)測(cè)試,QuackBehavior.java,(4)測(cè)試,MiniDuckSimulator.java,(4)測(cè)試,運(yùn)行,(4)測(cè)試,讓我們

4、看看如何設(shè)置動(dòng)態(tài)行為,(。向鴨子類添加兩種方法:(5)動(dòng)態(tài)行為,創(chuàng)建一個(gè)新的類模型鴨子,(5)動(dòng)態(tài)行為,創(chuàng)建一個(gè)新的行為類FlyRocketPowered,(5)動(dòng)態(tài)行為,測(cè)試,以及(5)動(dòng)態(tài)行為。讓我們看看整體布局。(6)包裝行為,設(shè)計(jì)原則3:多組合少繼承。包裝行為,這種設(shè)計(jì)就是策略模式;5.策略模式,定義,餐廳啟示,辦公室場(chǎng)景,術(shù)語的力量。,(一(定義,下面有什么不同?(二(餐廳啟示,(三(辦公室場(chǎng)景,(三(辦公室場(chǎng)景,模式允許你用更少的資源說更多的話。模式層面的談話讓你在設(shè)計(jì)中停留的時(shí)間更長。共享詞匯可以加速你的開發(fā)團(tuán)隊(duì)。共享詞匯表鼓勵(lì)更多初級(jí)開發(fā)人員跟上進(jìn)度(四(術(shù)語的威力,六、如何使用設(shè)計(jì)模式?如何使用設(shè)計(jì)模式?錯(cuò)誤觀念,(一),(二),想想看,(一(如何使用設(shè)計(jì)模式?(二(錯(cuò)誤觀念,(二(錯(cuò)誤觀念,七、總結(jié),抽象封裝多態(tài)性繼承,封裝變化。偏愛組合而不是繼承。編程到接口,而不是實(shí)現(xiàn)。策略定義一系

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論