Android 开发者应该从 Java 转到 Kotlin 吗?谷歌告诉你
今年 I/O 大會(huì)上,谷歌宣布正在采取的下一個(gè)重大步驟是Kotlin-first,Android 開發(fā)將越來(lái)越多地以 Kotlin 為主,許多新的 Jetpack API 和功能將首先在 Kotlin 中提供。并且當(dāng)天谷歌就開源了 Jetpack Compose呼應(yīng)這一戰(zhàn)略。
消息一出來(lái),“Android 開發(fā)以后是不是只能用 Kotlin 了”、“Android 開發(fā)者應(yīng)該從 Java 轉(zhuǎn)到 Kotlin 嗎”等問題困擾了開發(fā)者。對(duì)此,谷歌 Android Studio 技術(shù)負(fù)責(zé)人Jeffrey van Gogh 進(jìn)行了回應(yīng)。
“我們將在很多方面繼續(xù)支持 Java 編程語(yǔ)言”,Jeffrey 首先回答了 Android 關(guān)于 Java 支持的問題,同時(shí)給出了一張 Java 與 Kotlin 支持對(duì)照表。
表中可以看到,Kotlin 相比 Java,在 Android 開發(fā)中確實(shí)獲得了更加重要的地位,“比如在線培訓(xùn)、樣本,我們首先會(huì)在Kotlin 中支持,Java 中將是‘盡力而為’。同時(shí),有一些功能,如多平臺(tái)項(xiàng)目和 Jetpack Compose,只會(huì)在 Kotlin 中提供。”
Jetpack Compose 是一個(gè)非捆綁 UI 工具包,結(jié)合了反應(yīng)式編程模型和 Kotlin 編程語(yǔ)言的簡(jiǎn)潔性和易用性,旨在簡(jiǎn)化 UI 開發(fā)。
這樣來(lái)看,很顯然在今后一段時(shí)間內(nèi)Android 開發(fā)者并不是只有 Kotlin 一種選擇,Java 同樣可用。而至于這是否只是一個(gè)過(guò)渡,則要聽聽 Jeffrey 是如何回答“是否應(yīng)該從 Java 遷移到 Kotlin?”這一問題的。
“不要把‘Kotlin-first’誤解成必須將現(xiàn)有 Java 開發(fā)的 Android 使用 Kotlin 重寫”,Jeffrey 說(shuō)到,并補(bǔ)充說(shuō)明谷歌自家的應(yīng)用也沒有這樣做。
Jeffrey 的意思是 Java 與 Kotlin 具有極高的互操作性,所以兩者完全可以共存于同一個(gè)項(xiàng)目中。“看看 Android Studio,它有幾十萬(wàn)行代碼,其中大約有 10% 的 Kotlin 代碼。我們所做的只是使用Kotlin 編寫新功能。Kotlin 與 Java 具有很好的互操作性,可以在 Kotlin 中編寫單個(gè)類,其余部分使用 Java 編寫,或者使用 Kotlin 編寫99% 的代碼,而剩下的一點(diǎn)點(diǎn)用 Java 來(lái)寫。”
而具體應(yīng)該繼續(xù)使用 Java 還是轉(zhuǎn)到 Kotlin,Jeffrey 表示這需要考慮一些因素,比如團(tuán)隊(duì)對(duì)于 Kotlin 的興趣、Kotlin 的學(xué)習(xí)曲線之陡峭,還有能不能接受 Kotlin 本身相比 Java 在開發(fā) Android 上的弱點(diǎn),比如軟件構(gòu)建過(guò)程需要更長(zhǎng)的時(shí)間,因?yàn)?Kotlin 編譯器比通用 Java 編譯器要慢,以及 Kotlin 生成的 APK 相對(duì)較大。
此外應(yīng)用開發(fā)所處的階段也需要考慮,Jeffrey 表示新項(xiàng)目使用Kotlin 編寫是更好的選擇。
總結(jié)
以上是生活随笔為你收集整理的Android 开发者应该从 Java 转到 Kotlin 吗?谷歌告诉你的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 软银8亿美元投金融科技公司Greensi
- 下一篇: 华为回应学生定制机:第三方软件公司开发