gpt4 book ai didi

mvvm - 数据源、存储库、 View 模型和 IoC 容器。真的需要存储库吗?

转载 作者:行者123 更新时间:2023-12-03 10:16:48 26 4
gpt4 key购买 nike

我目前有这样的流程:
Repository被注入(inject) Datasource . ViewModel被注入(inject) Repository .

因为需要转换到 UI 的项目和突变(删除、更改)不断流动,所以我不在存储库中保留项目集合。因此,我最终得到了一个只在数据源和 View 模型之间传递项目的存储库。

我一直都明白,你不应该直接在 UI 层中使用 Datasource(ViewModels 在我的 UI 层中)。但是,如果您使用依赖注入(inject),情况仍然如此吗?我是在使用 Repository 模式还是只是给我造成了开销? (现在感觉就是这样。)

我最初实现了存储库来分离 UI 和数据源,但我发现 DI 在没有存储库的情况下做得很好。

最佳答案

您可能想看看 Oren Eini(又名 Ayende Rahien)的一些博客文章

The evils of the repository abstraction layer

或者

Repository is the new singleton

存储库通常只是“流加热器”。他们除了转发调用和结果之外什么都不做,只是增加了开销。

顺便说一句:如果你应该或不应该使用存储库与依赖注入(inject)无关!

更新

Oren 刚刚发布了 new post on this topic .

关于mvvm - 数据源、存储库、 View 模型和 IoC 容器。真的需要存储库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8886832/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com