Hoo
Hoo copied to clipboard
建议移除 repository 层
注意到项目中的 ShoeRepository
几乎都是直接调用 dao,没有提供其他有用的价值,不如直接在 view model 使用 dao 更加方便维护。
有些 Repository 方法 withContext
做了线程切换操作,这个在 repository 做是合理的,但是 Room 原生也已经支持 suspend 方法了。
有篇相关的文章: https://proandroiddev.com/anemic-repositories-mvi-and-rxjava-induced-design-damage-and-how-aac-viewmodel-is-silently-1762caa70e13