正如标题所说:
MVC 中可以引用的组件是否有任何限制?
视图可以保存对控制器的引用吗?等等..
View 必须具有对 Controller 的引用,以便在用户执行操作时它可以在 Controller 上执行方法。
View 还应该有对 Model 的引用,以便它可以在 Model 更改时自行更新。
控制器具有对模型和视图的引用。通常这些是对接口类型的引用,以允许在单元测试期间模拟它们。
旁注:我个人更喜欢MVP模式,因为我觉得它更容易测试。在 MVP 应用程序中,视图是一个非常非常薄的层,几乎不需要测试。控制器完成所有工作,并且可以使用模拟视图和模型进行良好测试。