【AAC 系列一】Android 应用架构新时代来临!

0. 序言

本文是深刻理解 Android Archicture Components(AAC) 系列文章的开篇。html

在 2017 年,Android 推出了 Android Jetpack,它是新一代组件、工具和架构指导,旨在加快 Android 应用开发速度。前端

Android Jetpack 分为四大块:Architecture、UI、Foundationy 以及 Behavior,随着时间的增长,Android 团队在 Jetpack 又增添了许多组件,目前最新的版图以下。android

注意:2019 I/O 以后 Jetpack 又多了 CameraX 等,图中还未包含。git

image.png

(图1-Android Jetpack)github

1. Jetpack 架构组件

Jetppack 意在帮助咱们开发者加快开发速度,可以让咱们专一于本身的业务而不是花费大量时间去作一些兼容等琐碎的工做。

在我我的的体验角度而言, Architecture (架构组件) 对个人实际开发工做的帮助很是大。

Architecture 模块有着良好的兼容性,而且架构组件里的每一个组件可以帮助咱们应对某一类 难题/痛点
数据库

  1. Lifecycle :可以帮咱们轻松的应对 Activity/Fragment 的生命周期问题,可以让咱们以一种更加解耦的方式处理生命周期的变化问题,以及轻松避免内存泄露;
  2. LiveData :基于观察者模式、而且感知生命周期的数据持有类,可以帮助咱们更好地解耦与处理数据;
  3. ViewModel + Data Binding :为咱们在 Android 平台上实现 MVVM 架构提供了很是有效而强大的支持;
  4. Room :提供了一种更加友好高效的数据库持久化的功能;
  5. WorkManager :为咱们执行后台任务提供了一站式解决方案;
  6. Navigation :可以帮助咱们更加方便地构建单 Activity 应用;
  7. Paging :可以帮助咱们应对加载大数据问题;

2. 官方推荐的 Android 应用新架构

Android 在推出 架构组件 的同时,还推荐了一个适合 Android 应用的架构,各个组件组织起来,以下图:
markdown

image.png

(图 2-Android 应用新架构)


每一个组件都关注本身的事情,互不干扰,让咱们的应用更加解耦且职责清晰。

为何我说 Android 应用架构新时代来临?

由于,这彷佛是 Android 团队第一次官方推荐一种 Android 应用架构,在这以前,Android 应用开发一直没有什么官方主导推荐的架构。咱们作开发,也一直都是比较随意的,好比 MVC、MVP 甚至是 前端的 Flux 类型的架构都有在 Android 上被应用。而这一次一会儿这么多牛逼的架构组件,再加上官方架构指导,能够称得上 Android 应用架构新时代来临了!

3. 小结

很显然了,架构组件对于咱们来讲具备很是大的实战价值,咱们必须去了解并学会它们!架构

架构组件 如此NB,咱们应该如何更好地使用它们呢?

它们背后的原理是什么样子的呢?

不要着急,船长后续会写一些列文章,来带你们一块儿学习一下这 NB 的架构组件!
ide

我创建了一个免费的星球来玩,历来没有对外宣传过,欢迎来玩。工具

免费加入、免费、免费。

公众号:程序亦非猿

4. 参考与推荐

jetpack官网:developer.android.com/jetpack
YouTube 系列:www.youtube.com/playlist?li…
Jetpack 发布介绍:googledeveloperschina.blogspot.com/2018/05/and…
架构指南:developer.android.com/jetpack/doc…
App实战指南:github.com/googlesampl…

相关文章
相关标签/搜索