我正在制作一个游戏,并一直在下面的例子中使用MVC架构模式。我现在正试图让我的头脑明白,这将如何与三层架构相适应。从我到目前为止收集的资料来看:

我的游戏模型包含描述抽象游戏世界的所有类--所有的项目、角色、它们在世界中的位置和速度、分数等等。
但是现在是什么构成了下面的业务层呢?因为这是我通常会与业务层联系在一起的所有事情。
在这种情况下,图表是否应该显示UI层中的View和Controller,而模型包含在它们下面的业务层中?
发布于 2014-04-27 18:07:31
引用Martin的名篇:
在MVC中,域元素被称为模型。模型对象完全不了解UI。
因此,答案是,“业务逻辑”属于模型层。(它本身可以由任意更多的东西组成,绝对不只是贫血的域对象)。你把你的域对象放在那里对我来说是正确的。
也就是说,MVC架构模式很少适合任何实际情况,更不用说游戏了。游戏有不同的架构问题,MVC并没有在实践中解决它们。
您应该专注于关注点的分离和以模块化的方式构建您的逻辑,重点关注适合您的问题的一种分离表示形式。MVC是UI编程中最常用的术语之一,人们倾向于将它用于任何单独的表示。思考“MVC”是什么并不是很有用。关注您的体系结构,而不是特定的模式。
https://softwareengineering.stackexchange.com/questions/234070
复制相似问题