Android中具有干净架构的mvvm和没有干净架构的mvvm有什么区别?

Ste*_*ara 18 android mvvm clean-architecture

我正在学习 MVVM 和 Clean Architecture。然后我发现了一些关于 MVVM + Clean Architecture 的文章,但我仍然没有明白 mvvm with clean architecture 和 mvvm without clean architecture 之间的区别。有关于这些东西的总结吗?谢谢你。

小智 14

干净的架构旨在分离层。业务层、数据层和表示层将是独立的应用程序。因此,您将增加它们中的每一个的可重用性。MVVM 作为设计模式应该在表示层中实现。表示层将与业务层(或领域层)交互,业务层将使用数据层来共享数据。

  • 那么如何将 use sasese 与 mvvm 层连接起来?mvvm 中的“model”与“CA”一起使用时代表什么 (2认同)

Dev*_*ven 13

我认为:

没有干净架构的 MVVM:

______________________________________________

UI
- - - - - - - - - - - - - - - - - - - - - - - 

Presenter/ViewModel        (Business Logic)
______________________________________________

Repository

DataSource
______________________________________________
Run Code Online (Sandbox Code Playgroud)

具有简洁架构的 MVVM:

______________________________________________

UI
                                                Presentation Layer
Presenter/ViewModel        
______________________________________________

UseCases + Entity          (Business Logic)    Domain/Business Layer
______________________________________________

Repository
                                                Data Layer
DataSource
______________________________________________
Run Code Online (Sandbox Code Playgroud)


far*_*ruk 8

MVVM 只是presentation layer. 它只是关于如何显示来自用例的数据的一组规则。

使用干净架构的好处之一是我们可以在presentation layer不改变domain layer或用例的情况下改变我们的设计模式。

因此,例如,如果我们使用假设 MVI,然后更改为 MVVM,则可以轻松顺利地完成.. :)


for*_*yar 5

MVVM只是一种管理您所使用的任何架构的视图层的技术。

简洁架构是一种组织层间通信的方式。它们并不相互排斥

具有简洁架构的 MVVM 层代码分为三个独立的层:

  • 表示层
  • 领域层
  • 数据层

表示层
在这里,与视图和动画相关的逻辑发生。它使用 模型-视图-视图模型( MVVM ),但您可以使用任何其他模式,例如MVCMVP