国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

《游戲編程模式》筆記——子類沙箱

2023-09-13 04:23 作者:黑白色的楓  | 我要投稿

意圖

用一系列由基類提供的操作定義子類中的行為。

模式

基類定義抽象的沙箱方法和幾個提供的操作。 將操作標(biāo)為protected,表明它們只為子類所 使用。 每個推導(dǎo)出的沙箱子類用提供的操作實現(xiàn)了沙箱函數(shù)。


實際上,子類沙箱的主要目的是減少子類與其他系統(tǒng)的代碼的耦合,將這些耦合轉(zhuǎn)移和集中到到基類中,由基類提供通用的行為給子類使用。

設(shè)計決策

應(yīng)該提供什么操作?

如果提供的操作只被一個或幾個子類使用,將操作加入基類的收益不會太多。

當(dāng)調(diào)用其他地方的方法,并且沒有修改狀態(tài)就有更少的干擾,屬于“安全的”耦合。

如果操作知識提供了外部系統(tǒng)的轉(zhuǎn)發(fā)調(diào)用,這樣的代碼價值也比較低,除非這些方法接觸了不想暴露給子類的狀態(tài)。

方法應(yīng)該直接提供,還是包在對象中提供?

例如我們不應(yīng)該直接在角色的基類中去調(diào)用音頻組件播放聲音,而是通過音頻系統(tǒng)提供的函數(shù)來播放聲音,由音頻系統(tǒng)通過函數(shù)接受的參數(shù)去使用音頻組件播放指定的聲音。


《游戲編程模式》筆記——子類沙箱的評論 (共 條)

分享到微博請遵守國家法律
剑河县| 通山县| 如皋市| 恩施市| 永善县| 雷波县| 汉源县| 夹江县| 涟源市| 恩平市| 临沂市| 沁水县| 策勒县| 伊宁市| 永仁县| 海口市| 常山县| 松潘县| 确山县| 宝清县| 大连市| 麟游县| 文安县| 黑水县| 洛浦县| 沛县| 四子王旗| 内乡县| 桓仁| 新巴尔虎左旗| 郎溪县| 铜山县| 云和县| 柘城县| 安康市| 常熟市| 瑞昌市| 左权县| 进贤县| 井冈山市| 饶平县|