Android轻量级MVVM demo, 简单易读易上手:
https://gitee.com/aican/mvvm_demo
mvvm框架的demo。精简删除google官方demo的工厂模式。
数据分为:
data层::获取api数据并解析成data层model
domain层:处理成ui层model
ui层::展示数据
使用dagger、databingding、rxjava、rxandroid等。
心得:
如何区分view和viewmodel,哪些东西需要写在viewmodel?mvvm有一个很大的优点就是可以做junit test 测试, 那么理论上我们的所有的逻辑代码,for、if、swith等等都要写在viewmodel。view只用来展示数据,相反,写在viewmodel的代码也应该是可测试的java 代码,不能包含android的东西。
如有错误麻烦指正,谢谢。
作者:花重锦官城