【问题标题】:Humble dialog vs MVC谦虚对话 vs MVC
【发布时间】:2008-10-23 10:26:22
【问题描述】:

为什么我应该选择使用其中一种而不是另一种?在哪些情况下?

我主要专注于桌面应用程序,就我个人而言,我确实发现简陋的对话框更易于使用和自然。

【问题讨论】:

    标签: unit-testing user-interface design-patterns


    【解决方案1】:

    在 MVC 中,您仍然会使用“谦虚”的对话框。除了它的所有业务逻辑将被转移到其他地方的另一个类。

    http://en.wikipedia.org/wiki/Model-view-controller

    您需要权衡对 MVC 的投资是否值得 - 特别是如果您只使用一个简单的对话框。

    【讨论】:

      【解决方案2】:

      我发现关于模型视图控制器/演示者模式的优缺点的最佳讨论之一是由 Martin Fowler 撰写的:http://martinfowler.com/eaaDev/uiArchs.html

      简而言之,通过选择使用 MVC 变体,您可以提高视图(对话框)的可测试性。另一方面,如果您不希望该对话框非常复杂,则将所有逻辑保留在您的对话框类中可能会很好,但是随着复杂性的增加,可测试代码的好处也会增加。

      这确实是一个判断电话。

      【讨论】:

      【解决方案3】:

      “Humble”对话框本身已经是 MVC。你有:

      • M,对话框消息的内容。
      • V,用户可以看到的窗口和小部件。
      • C、对话框如何显示以及如何响应用户活动。

      您的 GUI 框架或包装库可以无缝地为您提供 MVC,而无需您考虑,但它仍然是 MVC。

      【讨论】:

        【解决方案4】:

        没有简单的答案。

        你应该使用任何能让你的生活更轻松的东西。

        如果对话真的很简单,并且您知道肯定会保持这种状态,那么请使用谦虚的对话。

        如果您有更复杂的东西,例如同一数据的多个视图表示,或者您知道简单的对话框会随着时间的推移变得更加复杂,那么请务必使用 MVC。

        您还可以查看 ant MVP 模式作为 MVC 的替代方案。

        【讨论】:

          猜你喜欢
          • 2017-03-14
          • 2021-02-23
          • 1970-01-01
          • 1970-01-01
          • 2012-09-14
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多