首页 > 解决方案 > 数据模型应该拥有一个控制器吗?(MVC)

问题描述

我正在实现一个游戏,其中玩家有一艘船,他需要随船移动并收集一些东西。玩家也有得分和生命。

我将系统设计为 MVC 模式,现在我有一个boatModel 对象,它保存有关船的数据,BoatController 负责处理运动。

我考虑制作一个 PlayerModel 对象,它包含有关玩家的数据,包括生命、分数和 BoatController。那是因为从概念上讲,玩家有自己的“船夫”

模型对象“具有”控制器(根据 MVC 模式)是否有意义?

如果不是,如何设计它会更好?

谢谢。

标签: javamodel-view-controllerdesign-patterns

解决方案


不建议将控制器放在模型中。但是,尽管您只有一个具体的类(您的模型),但访问者模式应该是解决您问题的好方法。

访问者模式(维基百科)

在此处输入图像描述


推荐阅读