發(fā)布時(shí)間:2024-06-25 16:38:05 瀏覽量:159次
策略模式,顧名思義就是為了應(yīng)對不同情況而靈活選擇合適的策略。在游戲設(shè)計(jì)中,策略模式的應(yīng)用早已司空見慣。通過定義算法家族,將其封裝并能相互替換,游戲設(shè)計(jì)者能夠輕松應(yīng)對各種情況而不影響玩家體驗(yàn)。
在現(xiàn)實(shí)生活中,我們經(jīng)常見到各種餐飲店通過不同的優(yōu)惠活動來吸引顧客,比如優(yōu)惠券折扣、返現(xiàn)促銷、以及拼團(tuán)優(yōu)惠等等。讓我們通過程序模擬這個(gè)場景,首先定義一個(gè)促銷策略的接口:
public interface IPromotionStrategy { void doPromotion();}
接著創(chuàng)建不同的優(yōu)惠策略類,比如優(yōu)惠券抵扣策略、返現(xiàn)促銷策略、拼團(tuán)優(yōu)惠策略等,然后再創(chuàng)建一個(gè)促銷活動方案類,通過動態(tài)選擇不同的策略來執(zhí)行對應(yīng)的優(yōu)惠活動。
實(shí)際應(yīng)用中,隨著促銷活動增多,使用者和維護(hù)者面臨很大挑戰(zhàn)。這時(shí)候,我們可以結(jié)合工廠模式和單例模式對代碼進(jìn)行優(yōu)化,降低維護(hù)難度。
以移動支付為例,用戶在支付時(shí)可以選擇支付寶、微信、銀聯(lián)等多種支付方式。在這種場景下,策略模式可以幫助系統(tǒng)靈活選擇默認(rèn)的支付方式,或者根據(jù)用戶選擇執(zhí)行不同的支付策略。
通過抽象類Payment和不同的支付方式類,以及訂單類Order結(jié)合策略模式,實(shí)現(xiàn)支付方式的靈活選擇和支付操作。
在源碼中,Comparator接口的compare()方法就是典型的策略模式實(shí)現(xiàn)。通過傳入不同的Comparator實(shí)現(xiàn)類,可以實(shí)現(xiàn)對象的不同排序策略。
Spring框架中通過InstantiationStrategy接口,多種策略靈活選擇對象初始化方式。不同實(shí)現(xiàn)類如SimpleInstantiationStrategy、CglibSubclassingInstantiationStrategy等提供不同的對象實(shí)例化策略。
優(yōu)點(diǎn):
缺點(diǎn):
想了解更多游戲設(shè)計(jì)、數(shù)字藝術(shù)等培訓(xùn)課程嗎?快來點(diǎn)擊點(diǎn)擊咨詢,火星時(shí)代教育等你來挑戰(zhàn)!
熱門資訊
探討游戲引擎的文章,介紹了10款游戲引擎及其代表作品,涵蓋了RAGE Engine、Naughty Dog Game Engine、The Dead Engine、Cry Engine、Avalanche Engine、Anvil Engine、IW Engine、Frostbite Engine、Creation引擎、Unreal Engine等引擎。借此分析引出了游戲設(shè)計(jì)領(lǐng)域和數(shù)字藝術(shù)教育的重要性,歡迎點(diǎn)擊咨詢報(bào)名。
2. 手機(jī)游戲如何開發(fā)(如何制作傳奇手游,都需要準(zhǔn)備些什么?)
?如何制作傳奇手游,都需要準(zhǔn)備些什么?提到傳奇手游相信大家都不陌生,他是許多80、90后的回憶;從起初的端游到現(xiàn)在的手游,說明時(shí)代在進(jìn)步游戲在更新,更趨于方便化移動化。而如果我們想要制作一款傳奇手游的
3. B站視頻剪輯軟件「必剪」:免費(fèi)、炫酷特效,小白必備工具
B站視頻剪輯軟件「必剪」,完全免費(fèi)、一鍵制作炫酷特效,適合新手小白??靵碓囋?!
4. Steam值得入手的武俠游戲盤點(diǎn),各具特色的快意江湖
游戲中玩家將面臨武俠人生的掙扎抉擇,戰(zhàn)或降?殺或放?每個(gè)抉定都將觸發(fā)更多愛恨糾葛的精彩奇遇?!短烀嬗肪哂卸嗑€劇情多結(jié)局,不限主線發(fā)展,高自由...
5. Bigtime加密游戲經(jīng)濟(jì)體系揭秘,不同玩家角色的經(jīng)濟(jì)活動
Bigtime加密游戲經(jīng)濟(jì)模型分析,探討游戲經(jīng)濟(jì)特點(diǎn),幫助玩家更全面了解這款GameFi產(chǎn)品。
6. 3D動畫軟件你知道幾個(gè)?3ds Max、Blender、Maya、Houdini大比拼
當(dāng)提到3D動畫軟件或動畫工具時(shí),指的是數(shù)字內(nèi)容創(chuàng)建工具。它是用于造型、建模以及繪制3D美術(shù)動畫的軟件程序。但是,在3D動畫軟件中還包含了其他類型的...
7. 3D動漫建模全過程,不是一般人能學(xué)的會的,會的多不是人?
步驟01:面部,頸部,身體在一起這次我不準(zhǔn)備設(shè)計(jì)圖片,我從雕刻進(jìn)入。這一次,它將是一種純粹關(guān)注建模而非整體繪畫的形式。像往常一樣,我從Sphere創(chuàng)建它...
8. 如何自己開發(fā)一款游戲(游戲開發(fā)入門必看:五大獨(dú)立游戲開發(fā)技巧)
?游戲開發(fā)入門必看:五大獨(dú)立游戲開發(fā)技巧無論您是剛剛起步開發(fā)自己的第一款游戲,還是已經(jīng)制作了幾款游戲,本篇文章中的5大獨(dú)立游戲開發(fā)技巧都可以幫助您更好地設(shè)計(jì)下一款游戲。無論你對游戲有著什么樣的概念,都
?三昧動漫對于著名ARPG游戲《巫師》系列,最近CD Projekt 的高層回應(yīng)并不會推出《巫師4》。因?yàn)椤段讕煛废盗性诓邉澋臅r(shí)候一直定位在“三部曲”的故事框架,所以在游戲的出品上不可能出現(xiàn)《巫師4》
10. 3D打印技巧揭秘!Cura設(shè)置讓你的模型更堅(jiān)固
想讓你的3D打印模型更堅(jiān)固?不妨嘗試一下Cura參數(shù)設(shè)置和設(shè)計(jì)技巧,讓你輕松掌握!
最新文章
同學(xué)您好!