第一次写文章~,废话少说。先给大家拜个早年 2020 年新年快乐~
2018 年Google I/O 大会推出了 JetPack 框架。旨在帮助开发者更轻松地开发出色的 Android 应用。
作为一名Android开发还不赶紧尝试一波~
下面摘自Google:
- Jetpack 是 Android 软件组件的集合,使您可以更轻松地开发出色的 Android 应用。这些组件可帮助您遵循最佳做法、让您摆脱编写样板代码的工作并简化复杂任务,以便您可以专注于您关心的代码。
- Jetpack 包含与平台 API 解除捆绑的 androidx.* 软件包库。这意味着,它提供向后兼容性并且比 Android 平台更频繁地更新,从而确保您始终可以获取最新且最好的 Jetpack 组件版本。
目前开发中常用的设计模式 无非MVP、MVVM 关于各自的优缺点。相信每个开发都各有各的看法与观点,VM模式在我看来也是MVP的变种,能够更好地去和View解耦,可以极大地给View层减负。
以下摘自百度:
MVVM优点:
1. 低耦合。视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。
2. 可重用性。你可以把一些视图逻辑放在一个ViewModel里面,让很多view重用这段视图逻辑。
3. 独立开发。开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计,使用Expression Blend可以很容易设计界面并生成xaml代码。
4. 可测试。界面素来是比较难于测试的,而现在测试可以针对ViewModel来写
简介
只使用3个注解也可以轻松完成MVVM框架的搭建,让你的代码也可以看起来很骚~~~
本项目根据Google 新框架JepPack基本模式搭配dagger2 (地址) 完成 ViewModel 与 Respository (数据层) 的解耦。
使用 APT (Annotation Processing Tool) 注解处理工具,配合 Javapoet 构建完成。
项目整体架构参照Google的模式,基本保持一致。
项目地址: MvvmKotlin
? ? ? ? ? ? 喜欢记得 Star~ 点赞 ? ? ? ? ? ?
下面分为几个步骤大致说明一下实现过程~
直接引用原图(数据库部分没做处理 后续再说~~~)
- 整体框架结构