jetpack必知必会一走近jetpack

一、什么是jetpack

jetpack是Android官方推出的一个核心组件库,主要目的在于让App开发者开发出更加健壮,架构更好,品质更高的App。同时提高软件开发的效率。目前国内部分软件公司已经拥抱jetpack,但是因为一些历史原因,部分公司依然采用旧的开发模式。但是海外大多数企业已经都向jetpack靠拢了。jetpack主要包括四个组件库

  • 基础,提供基础功能并向后兼容,例如常用的AppCompat就在这里
  • 架构,提供快速的框架和软件设计方案,例如databinding快速数据绑定
  • 行为,提供统一稳健的软件行为操作库,例如权限管理,耗时任务操作等
  • 界面,囊括了许多界面相关的组件,例如动画,fragment,ViewPager2等
    jetpack必知必会一走近jetpack_第1张图片

二、为什么使用jetpack

我们从Google官方的宣传中就可以直接了解到,Jetpack 是一个由多个库组成的套件,可帮助开发者遵循最佳做法,减少样板代码并编写可在各种 Android 版本和设备中一致运行的代码,让开发者精力集中编写重要的代码。总结起来的话大致就是

  • 替换以前的support库,提供一个更好,更加独立和稳健的兼容方案
  • 官方实现了很多日常软件开发中需要用到的组件,消除重复样板代码
  • 提高软件品质,核心库帮你绑定数据,管理生命周期和内容,让你专注在对自身业务重要的部分
  • 当然,在提供了前面这些便利的同时开发效率肯定就提高了

三、jetpack核心库

jetpack比较常用的库主要包括

jetpack必知必会一走近jetpack_第2张图片

3.1、Architecture Compinents(架构组件)
  • Data Bingding(数据绑定)
  • Room(数据库)
  • WorkManager(后台任务管家)
  • Lifecycle(生命周期)
  • Navigation(导航)
  • Paging(分页)
  • Data Binding(数据绑定)
  • LiveData(底层数据通知更改视图)
  • ViewModel(以注重生命周期的方式管理界面的相关数据)
  • 其他
3.2、Foundation(基础)
  • AppCompat(兼容套件)
  • Android KTX(Kotlin代码库)
  • Multidex (多处理dex的问题)
  • Test(测试)
  • 其他
3.3、Behavior(行为)
  • Download manager(下载给管理器)
  • Media & playback(媒体和播放)
  • Notifications(通知)
  • Permissions(权限)
  • Preferences(偏好设置)
  • Sharing(共享)
  • Slices(切片)
  • 其他
3.4、UI(视觉交互)
  • Animation & transitions(动画)
  • Fragment(Fragment)
  • Layout(布局)
  • Palette(调色板)
  • 其他

四、参考

  • 应用架构指南
  • Google Android jetpack

你可能感兴趣的:(jetpack必知必会,android,jetpack)