我读了Bob叔叔的《清洁建筑》。我尝试实现简单的示例。我有这个图:
我不明白如何实现红线部分。例如,我有一个简单的网页:
我有2个按钮,一个编辑的文本和一个标签。如果按发送到服务器按钮-编辑文本中的文本将发送到服务器。如果我按下从服务器获取按钮-我加载消息并在label中播种。
如果单击第一个按钮(发送到服务器,会发生什么?我的视图调用演示者或控制器?
[如果我不愿意绘制图表-我的Web视图不了解演示者。它仅了解“屏幕视图”界面(它实现了此界面)。演示者也了解“屏幕视图”界面。但是演示者尚未链接到控制器。如何将我的文本从编辑文本框传递到控制器或交互?
也许这不是解释视图,演示者和控制者的最佳图片。他的书中还有其他图片更清楚地表明:
所有这些协作都是通过经常使用控制反转来遵守依赖关系规则来进行的。
有关视图,控制器和演示者交互的详细说明,请参见我的博客:http://www.plainionist.net/Implementing-Clean-Architecture-Controller-Presenter/