写点什么

互联网寒冬即将过去,Jetpack 将是燃起来的第一把火,我先收藏为敬

用户头像
Android架构
关注
发布于: 2 小时前
  1. 它是一套组件库。(说明它是由许多个不同的组件库构成,并不是一个单一的组件库)

  2. 使用 Jetpack 可以帮助我们在不同的 Android 版本和不同的设备上,实现行为一致的工作代码。(说明 Jetpack 可以轻松的处理由 Android 版本不一致和设备不同产生的差异性和兼容性问题)



Jetpack 是一种新的架构方式,从工作到现在,经历过了 MVC、MVP、MVVM、Clean 等,每个项目由于项目特点和需求的不同,都会出现一套基于开发者所设计的架构模式,分层、组件化、模块化,每一种设计都是基于项目所在场景的,很难适合所有项目场景。


但是 Jetpack,它是一套组件、工具和指导;是谷歌正式推出的一整套用来构建 APP 开发的组件。


对于产品,我们在开发中会遇到很多问题,比如:产品交互、用户体验、代码结构、数据获取、数据存储、网络优化、任务调度等等,很多问题还没有很好的解决和优化方案,Jetpack 就是 Google 给出的官方处理方法。


为什么要学习 Jetpack?




JetPack 更多是一种概念和态度。相当于 Google 把自己的 Android 生态重新整理了一番。确立了 Android 未来的版图和大方向。


JetPack 里目前包含的内容,未来也会是 Google 大力维护和扩展的内容。对应开发者来说也是值得去学习使用的且相对无后顾之忧的。JetPack 里没有的,除开一些优秀的第三方库,未来应该也会慢慢被新的 API 替代,逐渐边缘化,直至打上 Deprecate 注解。


以当下的环境来说,要开发出一个完全摆脱 JetPack 的 APP 是很难做到的。但是反过来讲 JetPack 也远远没有到成熟的地步,目前也还存在亟待解决的问题,未来可以做的事情还有很多。


关于使用的话,并不是所有库都建议使用,因为目前还有很多库在 alpha 版本。但是作为学习还是很有必要的,能给你日常的开发中多提供一些思路,这些是无可厚非的。


总的来说,JetPack 的推广对广大开发者而言是利远远大于弊的。


Android Jetpack 组件的优势:


1、轻松管理应用程序的生命周期;


2、构建可观察的数据对象,以便在基础数据库更改时通知视图;


3、存储在应用程序轮换中未销毁的 UI 相关数据,在界面重建后恢复数据;


4、轻松的实现 SQLite 数据库;


5、系统自动调度后台任务的执行,优化使用性能;外行看热闹,内行看门道。


据 Google 官方统计,使用 Jetpack 之后,App 的 bug 量可以大大减少约 43%,代码量差不多可以缩减到之前的一半。


下面我列举一下关于 Jetpack 地高频面试题,看看你能答出来几个?


  • TOP 1:Jetpack MVVM 下的页面通信怎么做?

  • TOP 2:LiveData “数据倒灌” 是什么情况,如何解决?

  • TOP 3:UI 逻辑为什么不在 ViewModel 中写?

  • TOP 4:为什么不用 LiveDataBus?

  • TOP 5:Navigation replace 方式返回时,怎么恢复视图状态?

  • TOP 6:页面 onPause 的时候,不是不该收到消息吗?

  • TOP 7:《最佳实践》项目中的 “DataBinding 严格模式” 是怎么回事?

  • TOP 8:绑定视图状态,LiveData 和 ObservableField,怎么取


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


舍?


  • TOP 9:LiveData observe 回调走了多次,该如何处理?

  • TOP 10:将《最佳实践》的 Navigation 修改版引入到自己项目,结果还是走的 replace,怎么办?


答不出来的同学请自行点击下方链接,获得答案

用户头像

Android架构

关注

还未添加个人签名 2021.10.31 加入

还未添加个人简介

评论

发布
暂无评论
互联网寒冬即将过去,Jetpack将是燃起来的第一把火,我先收藏为敬