官术网_书友最值得收藏!

前言

從2008年10月第一部Android智能手機(jī)發(fā)布到現(xiàn)在,Android已經(jīng)走過了十余年的歷程。從最開始任何框架都沒有,做一款應(yīng)用程序基本需要全部手寫代碼,到現(xiàn)在各種框架“滿天飛”,Android已形成一套完整的開發(fā)體系。而后Google官方又推出了Jetpack幫助開發(fā)者開發(fā)Android應(yīng)用程序。Jetpack是一個(gè)由多個(gè)庫組成的套件,可以幫助開發(fā)者遵循最佳做法,減少開發(fā)中的樣板代碼,讓開發(fā)者能夠集中精力編寫更重要的代碼,本書所講的Compose正是Jetpack的一部分。

寫作緣由

2019年5月,Google在I/O大會(huì)上公布了Android全新的UI系統(tǒng)Compose,但是直到2020年9月才發(fā)布了第一個(gè)Alpha版本,此后在各大技術(shù)網(wǎng)站移動(dòng)開發(fā)模塊中有很多人開始嘗試使用Compose編寫Android UI。2021年2月,Google終于發(fā)布了第一個(gè)Beta版本。時(shí)隔近兩年都沒有發(fā)布正式版,只發(fā)布了Beta版本,如此復(fù)雜但還要堅(jiān)持編寫Compose,足以表明Google對(duì)Compose的重視程度。

Compose Beta版本發(fā)布之后,各大技術(shù)網(wǎng)站迎來了新春,Compose的文章鋪天蓋地,但相關(guān)文章碎片化嚴(yán)重,無法進(jìn)行系統(tǒng)的學(xué)習(xí)。想到很多開發(fā)者應(yīng)該有和我一樣的困惑,而且Compose又極為重要,未來的Android開發(fā)肯定離不開Compose,所以我就想著寫一本書來幫助廣大開發(fā)者快速入門Compose并能夠?qū)嶋H使用。

我長期在CSDN和掘金等技術(shù)網(wǎng)站上發(fā)表技術(shù)文章,而且得到了大量開發(fā)者的認(rèn)可,還被CSDN評(píng)為了博客專家,這幾年中撰寫了上百篇技術(shù)文章,本以為自己的寫作經(jīng)驗(yàn)已經(jīng)足夠,寫一本書應(yīng)該不是什么難事,但真正動(dòng)筆才發(fā)現(xiàn)其中的艱辛。平時(shí)寫博客的時(shí)候可以隨心所欲地寫,想到哪里寫哪里,哪里理解深刻寫哪里,但寫書和寫博客很不一樣,寫書需要從頭到尾系統(tǒng)地進(jìn)行講解,而且邏輯需要更加縝密,一些細(xì)節(jié)必須考慮周全。

本書內(nèi)容

本書一共分為10章,歸納如下。

第1章介紹Compose的優(yōu)點(diǎn)以及搭建開發(fā)Compose的環(huán)境,兼顧了Windows和Mac平臺(tái),然后回顧C(jī)ompose中用到的Kotlin知識(shí)。

第2章創(chuàng)建并解釋第一個(gè)Compose應(yīng)用程序,然后詳細(xì)介紹Compose的編程思想。本章內(nèi)容比較難懂,大家可以先看后面的章節(jié),之后翻回來看會(huì)有更大的收獲。

第3章介紹Compose中的一些簡單控件,比如Text、Button、Image等,內(nèi)容比較簡單。

第4章介紹Compose中的布局。Compose中的布局和Android View中的布局基本對(duì)應(yīng),包括線性布局、幀布局、約束布局等。本章內(nèi)容比較重要,學(xué)好布局方式才能更加輕松地應(yīng)對(duì)實(shí)際工作中的各種場景。

第5章介紹Compose中的一些復(fù)雜控件,比如LazyColumn相當(dāng)于Android View中的RecyclerView。學(xué)會(huì)本章內(nèi)容,我們就可以使用Compose進(jìn)行一些簡單的開發(fā)了。

第6章介紹Compose中的自定義View。在Android View中自定義View并不簡單,但Compose幫我們做好了封裝,使得自定義View變得不再困難。學(xué)會(huì)本章內(nèi)容,就可以繪制一些常用的自定義View了。

第7章介紹Compose中的動(dòng)畫和手勢(shì)操作。Compose對(duì)此做好了封裝,使我們可以更加簡單地使用動(dòng)畫和手勢(shì)。

第8章介紹Compose和其他Jetpack庫的搭配使用,包括我們熟悉的LiveData、ViewModel、Navigation等。

第9章介紹Compose如何在之前的項(xiàng)目中使用,在Compose中如何使用Android View,以及在Compose中如何進(jìn)行屏幕適配。

第10章帶大家從頭到尾完整地開發(fā)一個(gè)簡單的項(xiàng)目,其中用到了之前章節(jié)中講到的大部分內(nèi)容,可以幫助大家加深對(duì)Compose的理解。

資源下載

為了方便大家的學(xué)習(xí),本書提供了書中所有項(xiàng)目的源碼1,但還是建議先手寫一遍再看源碼,這樣更能加深對(duì)代碼的理解。

我的CSDN博客Zhujiang和公眾號(hào)“江江安卓”會(huì)堅(jiān)持更新Android相關(guān)的技術(shù)文章,歡迎大家訪問交流。

本書勘誤

盡管我已對(duì)全書進(jìn)行了仔細(xì)的校對(duì),但書中難免會(huì)存在一些未發(fā)現(xiàn)的錯(cuò)誤,如果大家發(fā)現(xiàn)錯(cuò)誤,歡迎到我的CSDN博客或公眾號(hào)中留言,錯(cuò)誤被確認(rèn)后會(huì)提交到圖靈社區(qū)本書主頁。

致謝

在這段時(shí)間,幾乎我所有的業(yè)余時(shí)間都用來編寫此書。感謝我的家人,沒有他們的支持我不可能完成此書的創(chuàng)作。

感謝我的女朋友星,在我寫書期間她給了我很多鼓勵(lì)及支持,讓我有動(dòng)力完成此書。

感謝在我的學(xué)習(xí)過程中與我探討技術(shù)的各位同事及朋友,他們給了我一些創(chuàng)作的思路及建議。

感謝王軍花編輯,她在書稿的審核過程中提供了非常多的建議。

感謝為本書做出貢獻(xiàn)的每一個(gè)人!


1請(qǐng)?jiān)L問圖靈社區(qū)本書主頁獲取隨書資源。——編者注

主站蜘蛛池模板: 天津市| 图木舒克市| 临清市| 通道| 大姚县| 河间市| 宁远县| 双峰县| 文成县| 长岛县| 吴江市| 右玉县| 亚东县| 巴塘县| 漳州市| 新和县| 城步| 石阡县| 沽源县| 大渡口区| 荣成市| 施甸县| 五原县| 沙坪坝区| 新竹县| 古丈县| 九龙城区| 蚌埠市| 水富县| 秭归县| 共和县| 大兴区| 德清县| 塘沽区| 嘉黎县| 九龙城区| 贵德县| 屏山县| 哈密市| 清水河县| 中超|