一个基于Android MVVM的架构🐖
以下文章,我会把本架构称为 Capybara
放下Github链接先https://github.com/Ubitar/MVVMCapybara
Capybara 使用databinding + fragmentation
搭建,仅包含Activity
及Fragment
等基础组件等功能,
可能有些人喜欢用 navigation
,架构有分层,大家可以自己fork下来删减定制。
前言
在阅读 Capybara 前,我会默认大家都看过databinding、fragmentation、LiveData
的使用方法,及kotlin的使用,kt真香。
不过我希望先阅读一下下面链接里的大佬文章,加深对MVVM和数据驱动的了解。
https://www.zhihu.com/question/30976423/answer/106134677
https://www.jianshu.com/p/1fcda521fcda 禁止在layout中写复杂逻辑
当然,如果你做过Vue或者微信小程序那更好理解了,即时那时你会嫌弃安卓的MVVM,或者充满黑人问号
结构简述
Capybara 主要通过让组件继承IView 、IViewModel 、IModel
这3个接口来实现的。
View 层可以为你的Activity、Fragment或者DialogFragment
Model 层为为你的业务提供网络请求服务或者数据库读存服务
ViewMod