【问题标题】:I can not understand clean architecture's part (MVP) from uncle Bob book我无法从 Bob 叔叔的书中理解干净架构的部分(MVP)
【发布时间】:2023-03-05 01:54:01
【问题描述】:

我读过 Bob 叔叔的“清洁建筑书”。我试图实现简单的例子。我有这张图:

我无法理解如何实现红线部分。例如,我有一个简单的网页:

我有 2 个按钮、一个已编辑文本和一个标签。如果我按下 发送到服务器 按钮 - 编辑文本 中的文本将发送到服务器。如果我按下 从服务器获取 按钮 - 我会加载消息并在 标签 中播种。

如果我点击第一个按钮(发送到服务器)会发生什么?我的视图呼叫演示者或控制器?

如果我相信图表 - 我的 Web 视图不知道演示者。它只知道屏幕视图接口(它实现了这个接口)。演示者也知道屏幕视图界面。但是演示者没有链接到控制器。如何将我的文本从编辑文本框传递到控制器或交互?

【问题讨论】:

  • 如果你展示了你迄今为止尝试过的代码,它会更容易提供帮助。通常,您需要将提交操作从您的发送到服务器按钮映射到您的控制器

标签: java mvp clean-architecture gwt-mvp


【解决方案1】:

也许这不是解释视图、演示者和控制器的最佳图片。他的书中还有其他图片更清楚地表明了这一点

  • 视图向控制器发送请求对象
  • 控制器与业务逻辑交互
  • 业务逻辑将响应模型传递给演示者
  • 演示者更新视图观察到的视图模型

所有这些协作都是通过尊重依赖规则而发生的,通常使用控制反转。

有关视图、控制器和演示者交互的更详细说明,请参阅我的博客:http://www.plainionist.net/Implementing-Clean-Architecture-Controller-Presenter/

【讨论】:

    猜你喜欢
    • 2016-05-14
    • 2020-08-24
    • 2018-04-03
    • 2015-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-21
    • 2013-08-05
    相关资源
    最近更新 更多