我正在构建一个监控应用程序。我有几个类别,每个类别都有几个监视器。监视器的一个示例是 CPU 使用情况图。
我的问题是关于建筑的。我正在尝试实施 MVC 以使项目的未来扩展变得简单,但我陷入了两难境地。要么我
- 每个监视器有一个单独的控制器和模型,或者
- 有一个
MonitorController
对象和一个MonitorModel
对象,每个监视器有一个方法
#1 的缺点是
- 我将不得不单独定义每条路线
- 我将为每条路由实例化不同的控制器,每个路由基本上只有一个任务要执行:调用模型的
getData()
方法。从本质上讲,到目前为止,我已经能够/{category}/{monitor}
为所有显示器使用一条路由,而且简单性很好。
#2的缺点是
- 不灵活
- 该
MonitorModel
对象将变得巨大且无法维护,因为每个图表的getData()
方法可能非常复杂,跨越数十条线。
这里的正确方法是什么?
(顺便说一句,我正在使用 PHP。)