激情六月丁香婷婷|亚洲色图AV二区|丝袜AV日韩AV|久草视频在线分类|伊人九九精品视频|国产精品一级电影|久草视频在线99|在线看的av网址|伊人99精品无码|午夜无码视频在线

高校合作1:010-59833514 ?咨詢電話:400-810-1418 服務(wù)與監(jiān)督電話:400-810-1418轉(zhuǎn)接2

架構(gòu)師內(nèi)功心法,屬于游戲設(shè)計(jì)模式的策略模式詳解

發(fā)布時(shí)間:2024-06-25 16:38:05 瀏覽量:159次

游戲設(shè)計(jì)模式:策略模式的靈活運(yùn)用

策略模式,顧名思義就是為了應(yīng)對不同情況而靈活選擇合適的策略。在游戲設(shè)計(jì)中,策略模式的應(yīng)用早已司空見慣。通過定義算法家族,將其封裝并能相互替換,游戲設(shè)計(jì)者能夠輕松應(yīng)對各種情況而不影響玩家體驗(yàn)。

游戲優(yōu)惠活動營銷策略實(shí)例

在現(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)支付方式的靈活選擇和支付操作。

源碼中的策略模式應(yīng)用

Compartor接口實(shí)例

在源碼中,Comparator接口的compare()方法就是典型的策略模式實(shí)現(xiàn)。通過傳入不同的Comparator實(shí)現(xiàn)類,可以實(shí)現(xiàn)對象的不同排序策略。

Spring框架中的策略模式運(yùn)用

Spring框架中通過InstantiationStrategy接口,多種策略靈活選擇對象初始化方式。不同實(shí)現(xiàn)類如SimpleInstantiationStrategy、CglibSubclassingInstantiationStrategy等提供不同的對象實(shí)例化策略。

策略模式的優(yōu)缺點(diǎn)

優(yōu)點(diǎn):

  • 符合開閉原則,靈活擴(kuò)展策略類;
  • 避免復(fù)雜的條件語句,提高代碼可讀性;
  • 增加算法保密性和安全性。

缺點(diǎn):

  • 客戶端需了解所有策略類,選擇合適策略;
  • 可能產(chǎn)生大量策略類,維護(hù)復(fù)雜。

想了解更多游戲設(shè)計(jì)、數(shù)字藝術(shù)等培訓(xùn)課程嗎?快來點(diǎn)擊點(diǎn)擊咨詢,火星時(shí)代教育等你來挑戰(zhàn)!

熱門課程推薦

熱門資訊

請綁定手機(jī)號

x

同學(xué)您好!

您已成功報(bào)名0元試學(xué)活動,老師會在第一時(shí)間與您取得聯(lián)系,請保持電話暢通!
確定