在“真实的 Swing 生活”中,我发现最难掌握的设计模式之一是 MVC 模式。在这个站点上,我已经阅读了很多讨论模式的文章,但是我仍然觉得自己对如何利用 Java Swing 应用程序中的模式没有一个清晰的理解。
假设我有一个 JFrame,它包含一个表、几个文本字段和几个按钮。我可能会使用 TableModel 将 JTable 与底层数据模型“桥接”起来。但是,所有负责清除字段、验证字段、锁定字段以及按钮操作的函数通常都会直接进入 JFrame。但是,这不是混合了控制器和模式的视图吗?
据我所知,在查看 JTable (和模型)时,我设法“正确地”实现了 MVC 模式,但是当我把整个 JFrame 作为一个整体来看时,事情就变得混乱了。
我真的很想听听别人是怎么看待这件事的。当您需要使用 MVC 模式向用户显示一个表、几个字段和一些按钮时,您是如何做到的呢?