另一个“哪个更好”的问题,我知道这些是非常主观的。我对更好的定义是:
- 被最好的开发团队使用
- 最适合单元测试
- 最模块化/最容易构建产品应用
- Google 推荐的内容(这是我最困惑的地方)
所有 Android 蓝图都使用按功能打包:
https://github.com/googlesamples/android-architecture
/tasks
/addedittask
/taskdetail
以及所有架构组件示例使用逐层封装:
https://github.com/googlesamples/android-architecture-components
/db
/model
/ui
/persistence
我很困惑,因为在架构组件网站的底部,它实际上有指向 Android MVP 和 MVVM 蓝图示例的链接,这在我看来是矛盾的。
最佳答案
基于 Android Architecture guide , 和 Clean Architecture , 我会建议这种方法
data/
model/
remote/
local/
Repository
domain/
usecases/
GetUserListUseCase
presentation/
screen1/
screen1Activity
screen1Fragment
screen1ViewModel
screen2/
screen2Activity
screen2Fragment
screen2ViewModel
core
common/
di/
更多信息:https://www.toptal.com/android/android-apps-mvvm-with-clean-architecture
关于android - Android MVVM按功能打包和按层打包哪个更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54508117/