浅谈游戏开发中客户端需要了解的设计模式
admin
2024-01-20 13:22:11

创建型模式:

1.单例

2.建造者 用多个简单的对象一步步构成复杂的对象

3.原型 当创建对象代价较大时 缓存不变的一部分数据 创建新的数据 原型模式是通过拷贝一个现有对象生成新对象的

结构型模式:

1.桥接模式:一个类继承多个接口

2.过滤器模式:允许开发人员使用不同的标准来过滤一组对象 香蕉,葡萄,苹果都继承水果 水果类保存一个水果列表 香蕉从这个列表通过自己的条件可以过滤出来香蕉 葡萄,苹果也一样

3.装饰器模式:不在原有类的基础上修改 可以比较完整的保存之前稳定的代码 C#的partial

4.外观模式:例如dll 只能访问和调用 不能修改

5.享元模式:对象池

行为型模式

1.责任链模式:

每个接收者都包含对另一个接收者的引用。如果一个对象不能处理该请求,那么它会把相同的请求传给下一个接收者,依此类推

2.解释器模式:对于一些固定文法构建一个解释句子的解释器

3.迭代器模式:为了更好的遍历数据结构内部对象

4.中介者模式:

1-系统中对象之间存在比较复杂的引用关系,导致它们之间的依赖关系结构混乱而且难以复用该对象。 2-想通过一个中间类来封装多个类中的行为,而又不想生成太多的子类。

5.备忘录模式:

优点:1、给用户提供了一种可以恢复状态的机制,可以使用户能够比较方便地回到某个历史的状态。 2、实现了信息的封装,使得用户不需要关心状态的保存细节。
缺点:消耗资源。如果类的成员变量过多,势必会占用比较大的资源,而且每一次保存都会消耗一定的内存。

6.观察者模式:C#的事件

7.状态模式:游戏中的状态机的状态

8.策略模式:和状态模式有点像 分不太清楚区别

9.模板模式:

优点: 1、封装不变部分,扩展可变部分。 2、提取公共代码,便于维护。 3、行为由父类控制,子类实现。
缺点:每一个不同的实现都需要一个子类来实现,导致类的个数增加,使得系统更加庞大。

10.访问者模式:

优点:1.符合单一职责原则 2.优秀的扩展性 3.灵活性
缺点:违反了依赖倒置原则,依赖了具体类,没有依赖抽象

11.MVC模式:基本都有的一套结构

比如点击按钮, View【界面】通过Controller【控制】向服务端发送请求
【服务器回包】触发了数据更新,更新了Model【数据】的数据
Model【数据】数据变更,触发Controller【控制】向View层发消息
View【界面】收到消息,更新表现

相关内容

热门资讯

俄媒:俄罗斯来华游客数量稳步增... 参考消息网11月19日报道 据俄罗斯自由媒体网11月17日报道,自9月15日中国对俄罗斯游客试行免签...
“根本不愁卖,来晚了就没了”!... “在网上看到了,特地来尝鲜。”近日,“00后”陈女士打卡了一款名为“奶皮子糖葫芦”的零食。这款零食由...
重磅发布!2026全球高端餐厅... 来源:携程美食林 当用户真实评价 与顶尖美食家的专业洞察交汇 呈现给所有人的不仅是榜单的更迭 更是携...
治愈系美食爱情微短剧《宴遇簪花... 作为泉州成功入选“世界美食之都”后的首部治愈系美食爱情微短剧,《宴遇簪花缘》今日正式公布首轮剧照。首...
【京·花果蜜】怀柔栗子天团,申... 谁能拒绝这一美味?栗子酥、冰栗、栗子蛋糕…个个都是实力派!这口百年老树的甜,你最爱哪一款?