design-patterns - MVP模式(GWT)的优势是什么

标签 design-patterns gwt mvp gwt-mvp

我刚读了this article它确实让我很困惑。

Secondly, this model allows us to minimize our use of GWTTestCase, which relies on the presence of a browser, and, for the bulk of our code, write lightweight (and fast) JRE tests (which don't require a browser). [1]



这是我遵循这种设计模式的全部好处吗?它似乎使代码更复杂......你使用这种模式吗?

最佳答案

我不得不不同意,MVP 使代码变得不那么复杂,尤其是在 GWT 的情况下。如果您计划进行中型到大型 GWT 项目,那么 MVP 架构是您的主要选择。我建议同时查看 GWT MVP(由 Google 提供)和 gwt-platform(由 KennethJ 建议)。还有其他实现。

MVP 的主要好处(我的意思是 MVP 模式——不仅仅是 GWT MVP):

  • GWT UI 和
    商业逻辑;你所有的客户端
    Java 代码变得非常通用
    对 GWT 的依赖最小
    实现(主要通过
    接口(interface))。这有助于测试
    非常但它是无价的
    UI设计本身的好处。
  • 由于几乎不依赖业务,UI 的可维护性增加
    逻辑
  • 由于增加了客户端和服务器之间的共享代码量
    有限的 GWT 依赖关系

  • 您可能采用的其他补充技术:
  • gwt-gin(Google Guice 的客户端实现):gwtp 使它几乎是必需的(或必需的 - 我从来没有尝试过没有它)
  • Guice(服务器端)与客户端代码保持一致,但在技术上不是必需的
  • MVP 测试模拟框架(例如 mockito)总是很方便
  • GWT UIBinder - 除非你的 UI 设计非常动态
  • GWT EventBus - AJAX/JavaScript等异步环境中客户端通信的主要方法
  • GWT-RPC 通过命令模式(gwtp 调度程序和/或 RequestFactory)
  • 关于design-patterns - MVP模式(GWT)的优势是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5211869/

    相关文章:

    android - 是否有更新 android View 的标准模式?

    java - 通过 GWT 中的 JSONArray 进行缓慢迭代

    android - 在 MVP 模式中,适配器应该持有模型还是展示者持有模型并让适配器引用它?

    GWT SimplePager LastButton 问题

    architecture - 在 ExtJs 中分离 Controller 和 View

    android - 整洁架构 : Where to implement pagination logic?

    java - 返回集合中所有值的总和以及特定值的总和的两种方法

    Javascript 模式 : ( function(){} (function(){}) )

    swift - 为什么要创建 "Implicitly Unwrapped Optionals",因为这意味着您知道有一个值?

    java - 使用 gwt 在客户端将字节流转换为文件