为游戏预防巨大的玩家类

时间:2014-10-25 08:52:51

标签: oop design-patterns

所以我正在开发一个基于Web文本的游戏,无论出现什么业务需求,都会向Player类添加一个新方法。如果您以OOP方式开发游戏,您可能知道我在说什么。

在我的日常工作中,我正在开发一个游戏服务器项目,并且它还有一个巨大的播放器类。他们让这个课程变得更大的方式就是制作类似于"管理员和#34;:PlayerAttributeManager,PlayerFoodManager这些只是例子。所以你不会调用Player.getFood,Player.getTastyFood等等,但那些将在PlayerFoodManager中。例如。

一位朋友正在为Android制作一款游戏,如果他的逻辑是在Player类中的话,那也是最多的。然而,一个庞大的玩家类并没有打破我认为的设计模式,因为在那些游戏中,玩家可以做很多事情而且一切都与玩家有关。

请在创建游戏时给我任何关于如何创建小班级的建议。

1 个答案:

答案 0 :(得分:0)

保持Player类较小(呃)的一种方法是进一步采用OOP模式。让我们假设你的玩家此刻确实知道食物,知道如何吃东西等等。为什么不分解这些东西并采取不同的观点:你的玩家因缺乏更好的消息而有消化 - 或者,在OOP中,“消化”类型的属性,其本身就是一个涵盖饥饿,饮食等的类别。 类似的原则可以应用于播放器的其他方面。 最后,你的玩家将拥有Digestion,Health,Armory,......等类型的领域,这些方面将是自包含类,保持玩家类小。 当然,健康可能与消化有一些相互作用 - 这可以通过使用接口进行管理。