本文是深刻理解 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
(圖1-Android Jetpack)github
Jetppack 意在幫助咱們開發者加快開發速度,可以讓咱們專一於本身的業務而不是花費大量時間去作一些兼容等瑣碎的工做。
在我我的的體驗角度而言, Architecture
(架構組件) 對個人實際開發工做的幫助很是大。
Architecture 模塊有着良好的兼容性,而且架構組件裏的每一個組件可以幫助咱們應對某一類 難題/痛點
:
數據庫
Lifecycle
:可以幫咱們輕鬆的應對 Activity/Fragment
的生命週期問題,可以讓咱們以一種更加解耦的方式處理生命週期的變化問題,以及輕鬆避免內存泄露;LiveData
:基於觀察者模式、而且感知生命週期的數據持有類,可以幫助咱們更好地解耦與處理數據;ViewModel
+ Data Binding
:爲咱們在 Android 平臺上實現 MVVM 架構提供了很是有效而強大的支持;Room
:提供了一種更加友好高效的數據庫持久化的功能;WorkManager
:爲咱們執行後臺任務提供了一站式解決方案;Navigation
:可以幫助咱們更加方便地構建單 Activity 應用;Paging
:可以幫助咱們應對加載大數據問題;Android 在推出 架構組件 的同時,還推薦了一個適合 Android 應用的架構,各個組件組織起來,以下圖:
markdown
Android 應用架構新時代來臨
了!
很顯然了,架構組件對於咱們來講具備很是大的實戰價值,咱們必須去了解並學會它們!架構
架構組件 如此NB,咱們應該如何更好地使用它們呢?
它們背後的原理是什麼樣子的呢?
不要着急,船長後續會寫一些列文章,來帶你們一塊兒學習一下這 NB 的架構組件!
ide
我創建了一個免費的星球來玩,歷來沒有對外宣傳過,歡迎來玩。工具
免費加入、免費、免費。
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…