之前不久的Google I/O 2019大會上宣布Kotlin成為Android 開發(fā)首選語言Jetpack API 和功能將在 Kotlin 中提供,并且Google在當(dāng)天開源了Jetpack Compose
AndroidX包含了Google最新的一系列組件,Jetpack Compose也在其中,還處于pre-alpha版本。因此無法用gradle依賴項,而是需要從源代碼下載并安裝使用,這個簡直崩潰,本來想寫個demo的 ,一看這個依賴估計有3GB,暫時放棄了,下一篇再說
官方Jetpack Compose編譯介紹
Compose是基于Kotlin開發(fā)的響應(yīng)式UI工具包??雌饋矸浅n愃朴谀壳翱缙脚_的UI框架,例如ReactNative,F(xiàn)lutter。
目前的Android UI框架自2008年以來就一直在被使用,隨著時間的推移,Google想通過Jetpack Compose以現(xiàn)代組件化理念開始嘗試全新的UI構(gòu)建模式??聪鹿俜皆O(shè)計的核心原則:
image
總結(jié)如下:
- 與Android platform版本分開:包含在AndroidX中,可以快速更新bug。
- 更簡單的UI搭建流程: 在構(gòu)建UI時,不會強制使用View或Fragment。一切都是組件,可以自由組合在一起。
- 更清晰的狀態(tài)和事件處理:在應(yīng)用程序開發(fā)中最重要和最復(fù)雜的事情之一是在UI中處理數(shù)據(jù)流和狀態(tài)更新。Compose可以清楚地表達(dá)誰負(fù)責(zé)狀態(tài)以及應(yīng)該如何處理事件。
- 編寫更少的代碼:在Android中通過XML編寫UI通常需要大量代碼,例如使用RecyclerView創(chuàng)建復(fù)雜的嵌套布局時。Compose旨在大大簡化構(gòu)建UI的方式。
Compose目標(biāo)在于更簡單的創(chuàng)建隔離和可重用組件,從而幫助開發(fā)人員專注于創(chuàng)建出色的用戶體驗,而不是在開發(fā)中需要關(guān)注如何改進View和Fragment以視圖的層次結(jié)構(gòu)。