九九热最新网址,777奇米四色米奇影院在线播放,国产精品18久久久久久久久久,中文有码视频,亚洲一区在线免费观看,国产91精品在线,婷婷丁香六月天

歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類 > PPT文檔下載  

第三講策略模式課件

  • 資源ID:247852474       資源大小:426.50KB        全文頁(yè)數(shù):15頁(yè)
  • 資源格式: PPT        下載積分:10積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要10積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號(hào),方便查詢和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請(qǐng)知曉。

第三講策略模式課件

單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,單擊此處編輯母版標(biāo)題樣式,第三章 策略模式,韓 格,2011,年,3,月,提綱,3.1,問題描述,3.2,典型案例,3.3,策略模式,3.4,效果與適應(yīng)性,3.1,問題描述,問題,在處理客戶相同的業(yè)務(wù)時(shí),可能有不同的邏輯處理算法??蛻粜枰喾N不同的算法實(shí)現(xiàn)。,客戶希望在運(yùn)行時(shí)根據(jù)上下文選擇其中一個(gè)算法。使用算法的類變得復(fù)雜而難于維護(hù),尤其當(dāng)需要支持多種算法且每種算法都很復(fù)雜時(shí)問題會(huì)更加嚴(yán)重;,不同時(shí)候需要不同的算法,支持并不使用的算法可能帶來性能的負(fù)擔(dān);,算法的實(shí)現(xiàn)和使用算法的對(duì)象緊緊耦合在一起,使新增算法或修改算法變得十分困難,系統(tǒng)應(yīng)對(duì)變化的能力很差。,3.1,問題描述,方法,依據(jù)面向?qū)ο蟮乃枷?,我們所能想到的辦法就是將每種算法的實(shí)現(xiàn)都剝離出來構(gòu)成一個(gè)個(gè)獨(dú)立的算法對(duì)象,再?gòu)倪@些算法對(duì)象中抽象出公共的算法接口,最后將算法接口組合到使用算法的類中。上述思路就引入了一個(gè)新的設(shè)計(jì)模式策略模式。,3.2,典型案例,超市打折收銀軟件,為提高超市收益,超市開展促銷活動(dòng)。除了正常收費(fèi)方式,外,添加對(duì)某些產(chǎn)品打折收費(fèi)和滿額返現(xiàn)收費(fèi)方式。例如:,商品打,8,折、打,7,折、滿,300,元消費(fèi)返回,100,元、滿,500,返,200,。實(shí)現(xiàn)能夠計(jì)算總收費(fèi)額度的功能。,如何添加和修改各式各樣的多種收費(fèi)方式,?,3.2,典型案例,3.2,典型案例,收銀軟件設(shè)計(jì)類圖,3.2,典型案例,abstract class,CashSuper,/,收取現(xiàn)金的父類,public abstract double,AcceptCash(double,cash);,class,CashRebate:CashSuper,/,按一定打折率收取現(xiàn)金類,private double discount=1.0;,public,CashRebate(double,_discount),discount=_discount;,public override double,AcceptCash(double,cash),return cash*discount;,部分核心源碼,3.2,典型案例,public virtual GroupBox CreateGroupBox(String title,Control control),GroupBox gb=new GroupBox();,gb.Text=title;,gb.Dock=DockStyle.Fill;,gb.Controls.Add(control);,control.Dock=DockStyle.Fill;,return gb;,public virtual Panel CreatePanel(),Panel pl=new Panel();,pl.BackColor=Color.White;,pl.Paint+=new PaintEventHandler(pl_Paint);,return pl;,protected void pl_Paint(object sender,PaintEventArgs pea),int nPoint=101;,double w=(Panel)sender).Width-1;,double h=(Panel)sender).Height-1;,Point points=new PointnPoint;,for(int i=0;i nPoint;i+),double t=(double)i)/(nPoint-1);,pointsi.X=(int)(t*w);,pointsi.Y=(int)(4*h*(t-.5)*(t-.5);,Pen p=new Pen(Color.Black);,Graphics g=pea.Graphics;,g.DrawLines(p,points);,3.3,策略模式,策略模式(,Strategy,),它定義了算法家族,分別對(duì)其封裝起來,通過基類讓它們之間可以相互替換,而算法的變化不會(huì)影響到使用算法的客戶。,3.3,策略模式,3.4,效果與適應(yīng)性,優(yōu)點(diǎn),策略模式定義一系列算法,從概念上來看,所有這些算法都是完成相同或相似的工作,只是實(shí)現(xiàn)不同。它能以相同的方式調(diào)用所有算法,減少各種算法類與使用算法類之間的耦合。,策略模式的,Strategy,類層次為,Context,定義了一系列的可供重用的算法或行為。因?yàn)槔^承有助于析取出這些算法的公共功能。,3.4,效果與適應(yīng)性,策略模式也化簡(jiǎn)了單元測(cè)試,因?yàn)槊恳粋€(gè)算法都在一個(gè)類內(nèi),可以通過自己的接口單獨(dú)測(cè)試。,缺點(diǎn),客戶端必須知道所有的策略類,并自行決定使用哪一個(gè)策略類。這就意味著客戶端必須理解這些算法的區(qū)別,以便適時(shí)選擇恰當(dāng)?shù)乃惴悺Q言之,策略模式只適用于客戶端知道所有的算法或行為的情況。,策略模式造成很多的策略類。有時(shí)候可以通過把依賴于環(huán)境的狀態(tài)保存到客戶端里面,而將策略類設(shè)計(jì)成可共享的,這樣策略類實(shí)例可以被不同客戶端使用。換言之,可以使用享元模式來減少對(duì)象的數(shù)量。,3.4,效果與適應(yīng)性,適用范圍,策略模式就是用來封裝算法的。在實(shí)踐中,我們發(fā)現(xiàn)可以用它來封裝幾乎任何類型的規(guī)則,只要在分析過程中聽到需要再不同情況下應(yīng)用不同的業(yè)務(wù)規(guī)則,就可以考慮使用策略模式處理這種變化的肯能性。,The End,Thanks!,

注意事項(xiàng)

本文(第三講策略模式課件)為本站會(huì)員(痛***)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!