为什么我应该选择使用一个而不是另一个?在哪种情况下?
我主要关注桌面应用程序,个人而言,我发现简单易用的对话框更容易使用。
答案 0 :(得分:8)
在MVC中,您仍然会使用“简陋”的对话框。除了它的所有业务逻辑之外,它将被移植到其他地方的另一个类。
http://en.wikipedia.org/wiki/Model-view-controller
你需要权衡MVC的投资是否值得 - 特别是如果你只使用一个简单的对话框。
答案 1 :(得分:7)
我发现关于模型视图控制器/演示者模式的优缺点的最佳讨论之一是由Martin Fowler编写的:http://martinfowler.com/eaaDev/uiArchs.html
简而言之,通过选择使用MVC变体,您可以提高视图的可测试性(对话框)。另一方面,如果你不希望对话框变得非常复杂,那么在对话框类中保留所有逻辑就可以了,但随着复杂性的增加,可测试代码的好处也会增加。
这真是一个判断电话。
答案 2 :(得分:6)
“谦虚”对话本身已经是MVC。你有:
您的GUI框架或包装库可以无缝地为您提供MVC,而不必考虑它,但它仍然是MVC。
答案 3 :(得分:1)
没有简单的答案。
你应该使用任何可以让你的生活更轻松的事情。
如果对话框非常简单,并且知道肯定会保持这种状态,请使用简洁的对话框。
如果你有更复杂的东西,比如相同数据的多个视图演示,或者你知道你的简单对话将随着时间的推移变得更加复杂,那么,无论如何,都要使用MVC。
你也可以看看蚂蚁MVP模式作为MVC的替代品。