【发布时间】:2012-02-21 11:06:25
【问题描述】:
我已经阅读了很多关于 MVC 设计模式的内容,但有些东西我仍然不清楚。我知道“模型”用于数据和业务逻辑,“视图”用于演示,“控制器”用于使用“模型”并提供“视图”(即 C 是 M 和 V 之间的通信通道)。
现在,我想解决以下问题:
问题: Web 应用程序将来自用户的节点列表作为输入。然后,使用模型从这些节点(使用数据库)中制作一个图(即数据结构图而不是 x-y 图)。
然后我使用 Dijkstra 算法找出该图中从起始节点到结束节点的最短路径。我是在 Model 还是 Controller 中使用 Dijkstra 算法?
我认为我应该使用模型层,因为“最短路径”本身就是数据。
但有时,我认为我应该将它放在 Controller 中,因为它使用模型(图形和节点列表)来做一些事情。
谁能给我正确的答案?现在我将在模型层实现 Dijkstra 算法。
【问题讨论】: