<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          谷歌大佬強勢分享《Jetpack Compose 權威指南》,帶你參透聲明式UI的終極奧義!

          共 2324字,需瀏覽 5分鐘

           ·

          2021-10-02 22:30


          為什么要選擇Compose?


          聲明式 UI 的大哥 Flutter 已經出道很久了,再學習 Compose 還有意義嗎?Flutter 還是 Compose?先拋出我的結論:如果你想運用到實際的生產環(huán)境中,Flutter 肯定是更好的選擇,因為更多的人幫你踩過了坑。如果你想 Kotlin 一把梭,只是學習嘗鮮,結合 Jetpack Compose 可以很好的作為你的技術儲備。簡單的聊聊 Compose 中還不錯的地方:

          Android開發(fā)習慣的繼承

          相信很多同學都有這樣的習慣:

          ①使用 Kotlin 開發(fā)

          ②必須協(xié)程

          ③復雜的布局會使用 ConstraintLayout

          是的,這些東西我們依然在 Compose 中運用,從而降低我們的上手難度。


          Android Jetpack 的支持

          在 Compose 剛剛發(fā)布的時候,Android Jetpack 中的很多其他庫都第一時間給予了 Compose 支持,從而豐富了 Compose 的開發(fā)生態(tài)。目前,能夠直接在 Compose 上使用的 Jetpack 庫有:Navigation、Paging、ViewModel、LiveData、hilt 、lifecycle

          理論上來講,Android Jetpack 上跟 UI 不相關的庫 Compose 應該都是支持的,在我寫的Hoo中,就使用了Paging、Navigation、ViewModel和LiveData等 Android Jetpack 庫,再有協(xié)程和 Kotlin 的加持,整個開發(fā)過程中輕松不少!


          ?更少的代碼

          Compose 可以使我們更加專注于 UI 的開發(fā),聲明式UI 可以顯著的減少方法數和包體積。在谷歌官方的 《Jetpack Compose 使用前后對比》 一文說道:Tivi應用在使用了 Compose 后,我們發(fā)現 APK 大小縮減了 41%,方法數減少了 17%。

          其實這些都是可以預見的,比如更加簡單的動畫和觸摸事件的 Api。


          Preview

          Compose支持代碼的Preview,如圖:

          Compose 代碼寫完后,可以直接在右邊預覽,但是更新速度差點意思,不如 Flutter 的熱重載方便。


          其他的一些點可能就跟 Flutter 有點像了:

          Compose 的主題原生支持黑夜模式,開發(fā)者定制主題的時候提供兩套顏色即可,想起之前,起點讀書支持黑夜模式可是花了很大的功夫。

          通過 Scaffold,可以輕松集成很多 Material 組件,比如 Topbar、FloatingActionButton和BottomNavigationBar 等,這些都可以幫助我們節(jié)省出不少的時間。另外,在 Compose 中不能輕松實現效果的時候,借助于AndroidView,可以去調用Android原生View。


          如何快速學習Compose


          接下來,我將給大家介紹一份谷歌大佬強勢分享《Jetpack Compose 權威指南》,手把手教大家Jetpack Compose從入門到精通。
          這份資料旨在給希望了解、學習、應用Android Jetpack Compose的小伙伴一個參考資料:


          第一章 初識Jetpack Compoese

          1. 為什么我們需要一個新的UI 工具?

          2. Jetpack Compose的著重點?

          加速開發(fā)

          強大的UI工具

          直觀的Kotlin API

          3. API 設計?

          4. Compose API 的原則?

          一切都是函數

          頂層函數(Top-level function)

          組合優(yōu)于繼承

          信任單一來源

          5. 深入了解Compose?

          Core

          Foundation

          Material

          6. 插槽API


          第二章 Jetpack Compose構建Android UI

          1. Android Jetpack Compose 最全上手指南

          Jetpack Compose 環(huán)境準備和Hello World

          布局

          使用Material design 設計

          Compose 布局實時預覽

          ……


          2. 深入詳解 Jetpack Compose | 優(yōu)化 UI 構建

          Compose 所解決的問題

          Composable 函數剖析

          聲明式 UI

          組合 vs 繼承

          封裝

          重組

          ……

          3. 深入詳解 Jetpack Compose | 實現原理

          @Composable 注解意味著什么?

          執(zhí)行模式

          Positional Memoization (位置記憶化)

          存儲參數

          重組

          ……


          第三章?Jetpack Compose實戰(zhàn)演練

          1. Jetpack Compose應用1

          開始前的準備

          創(chuàng)建DEMO

          遇到的問題

          2. Jetpack Compose應用2

          3. Jetpack Compose應用做一個倒計時器

          數據結構

          倒計時功能

          狀態(tài)模式

          Compose 布局

          繪制時鐘

          4. 用Jetpack Compose寫一個玩安卓App

          準備工作

          引入依賴

          新建 Activity

          創(chuàng)建 Compose

          PlayTheme

          畫頁面

          底部導航欄

          管理狀態(tài)

          添加頁面

          5. 用Compose Android 寫一個天氣應用

          開篇

          畫頁面

          畫背景

          畫內容

          ……

          6. 用Compose快速打造一個“電影App”

          成品

          實現方案

          實戰(zhàn)

          不足

          ……



          如果想要全方位系統(tǒng)學習了解Compose,那么這份《Jetpack Compose 權威指南》你一定不要錯過。以上資料都已打包整理好,需要的朋友掃描下面二維碼添加「月亮老師」報名練營領取!


          瀏覽 47
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲一级免费黄色电影 | 思思热思思操 | 蜜桃人妻无码 | 韩国三级中文字幕HD久久精品 | 20011年高清a免费看一级毛片 |