MVP和干净架构之间有什么区别


Answers:


15

鲍勃·马丁(Bob Martin)所说的“ 清洁架构 ”更像是“元架构”,这是创建分层架构的高级指南。它没有说什么

“必须有一个模型层,一个视图层和一个表示层,它们必须使用MVP来实现”,

它仅包含有关层次的更通用规则,例如“依赖关系必须从外圈到内圈,反之亦然”。而且由于在MVP中,视图(= UI)可能知道Presenter,但是Presenter通过接口与View分离,因此MVP只是满足此规则的许多可能解决方案之一。

当然,可以在“清洁体系结构”系统中使用MVP,但这不是唯一的正确方法。任何“内层”都不了解UI的特殊知识,并且UI也遵循Bob Martin文章中描述的其他“干净架构”规则的UI设计都可以。


如果我遵循MVP模式,是否可以确保我没有违反Clean体系结构规则?
Mehrdad Shokri '16

1
@Mehrdad:不。MVP仅能帮助您正确理解“依赖关系规则”,而且仅在View&Presenter层之间以及Presenter和Model之间,这同样如此。您仍然需要照顾Bob Martin文章中描述的所有其他事项。例如,仅MVP并不能阻止任何人在层之间传递复杂的数据结构(与该文章中提到的用于跨越边界的简单数据结构相反)。
布朗
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.