我想我了解MVC的基本概念-模型包含应用程序的数据和行为,视图负责将其显示给用户,控制器负责处理用户输入。我不确定控制器中到底是什么。
比方说,我有一个相当简单的应用程序(我在专门考虑Java,但我认为相同的原理也适用于其他地方)。我整理我的代码放入3包叫app.model,app.view和app.controller。
在app.model程序包中,我有一些类可以反映应用程序的实际行为。这些extends Observable和在适当时使用setChanged()和notifyObservers()触发视图更新。
该app.view封装具有一个使用类(或多个类为不同类型的显示器)javax.swing组件来处理的显示。其中一些组件需要反馈到模型中。如果我理解正确,则View应该与反馈无关,而应该由Controller处理。
那么我实际上要在Controller中放入什么呢?我是否public void actionPerformed(ActionEvent e)仅通过对Controller中的方法的调用将其放入视图中?如果是这样,是否应该在控制器中进行任何验证等?如果是这样,我如何将错误消息反馈回视图-应该再次通过模型,还是控制器应将其直接发送回视图?
如果验证是在View中完成的,我该在Controller中输入什么?
很长的问题,很抱歉,我只想记录我对过程的理解,希望有人可以为我澄清这个问题!