游戏设计模式阅读笔记13——解耦模式(组件模式)
一、意图
允许单一实体跨越多个领域而不会导致这些领域彼此耦合。
二、动机
当一个系统涉及到渲染,物理,声音,控制器输入等等...如果都写在一个类中,这个类就显得巨大且不易维护添加,高度耦合。
在使用并发的现代游戏中,为了让代码在多个线程上运行是至关重要的。将游戏分割为多线程的一种通用方法就是通过领域划分。在一个核上运行AI代码,在另一个上播放声音,在第三个上渲染等。
最简单的优化:将每个领域单独写成类。这些类被称为组件类。系统可以有多个组件类,但是他们之间互不知道彼此的存在。
在如今的软件设计趋势是:尽可能使用组件代替继承。不是让两个类继承同一类来分享代码,而是让它们拥有同一个类的实例。
三、组件模式详解
1.适用场景
1.需要分离一个涉及多个领域类的各个领域。
2.一个类很庞大且难以使用
3.想要定义一系列分享不同能力的类,但是使用继承无
共有 0 条评论