写点什么

Android 面试必刷的 200 道真题,全网独家首发

发布于: 刚刚

Android Jetpack 组件的作用是什么?

  • Navigation:一个用于管理 Fragment 切换的工具类,可视化、可绑定控件、支持动画等是其优点。

  • Data Binding:不用说,都知道,加速 MVVM 的创建。

  • Lifecycle:他是我们能够处理 Activity 和 Fragment 的生命周期的重要原因,在 AndroidX 的 Fragment 和 Activity 已经对 Lifecycle 提供了默认支持。

  • ViewModel:当做 MVVM 的 ViewModel 层,并具有声明周期意识的处理和 UI 相关的数据。

  • LiveData:同 RxJava 的作用一样,对数据进行监听,优点就是无需处理生命周期、无内存泄漏等。

  • Room:强大的 ORM 数据库框架。

  • Paging:易于使用的数据分页库,支持 RecyclerView。WorkManager:灵活、简单、延迟和保证执行的后台任务处理库。

你可能选择 Android Jetpack 的原因

以下可能是你会选择 Android Jetpack 的原因:


  • 一起使用更方便:因为 Android Jetpack 组件中的很多库都对其他库提供了支持,比如 Room 和 Paging 就对 LiveData 提供了支持。

  • 向后兼容:基本上每个组件都对低版本提供了支持。

  • 支持 RxJava:由于 RxJava 强大的生态环境,几乎和数据相关的组件都对 RxJava 提供了支持。

  • 减少代码量:以 Data Binding + ViewModel + LiveData 或 RxJava 构建的 MVVM 模式能够显著减少代码量,比较平时使用的 MVP 模式也会更加方便,无需主动更新 UI。

  • 无需捆绑:Android Jetpack 系列组件可以无需捆绑使用,你如果只想用里面的单个库,那么就可以仅仅依赖一个库。

Android Jetpack 要学吗?

学,肯定要学,Android Jetpack 于谷歌而言,这是他们重新整理和统一安卓生态环境决心的体现,Android Jetpack 所展现的内容,也是谷歌想拓展和维护的方向。于长期苦恼于第三方库选择的广大 Android 开发者而言,这是谷歌为我们提供的一盏明灯。


也许,Android Jetpack 系列的部分库还没成熟到成为你工作的第一选择,但是,深入学习 Android Jetpack 组件会为你提供与谷歌大佬深入交流的机会,为你日常的开发带来一些想法。

最后

由于文章篇幅原因,我只把面试题列了出来,详细的答案,我整理成了一份 PDF 文档,这份文档还包括了还有?高级架构技术进阶脑图、Android 开发面试专题资料,高级进阶架构资料 ,帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习。


**本文已被[CODING 开源项目:《Android 学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》](


)



收录**


最后自我介绍一下,小编 13 年上海交大毕业,曾经在小公司待过,也去过华为、OPPO 等大厂,18 年进入阿里一直到现在。

深知大多数初中级 Android 工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此也是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

用户头像

还未添加个人签名 2021.10.19 加入

还未添加个人简介

评论

发布
暂无评论
Android面试必刷的200道真题,全网独家首发