Google 對于從 Java 切換到 Kotlin 時的注意事項提供了第一手的經驗,本文對此作了詳細闡述。
來源:medium.com
作者 | Nick Heath
譯者 | 蘇本如,責編 | 屠敏
出品 | CSDN(ID:CSDNnews)
Google 一直在權衡是否讓它的 Android 開發者從使用 Java 語言來構建應用程序切換到使用 Kotlin 語言。
Google Android Studio 的技術負責人 Jeffrey van Gogh 表示,這個問題在 Google 發出的“Android?應用程序開發應該優先使用 Kotlin”的這份聲明中被提出來了。
但是 Android 開發“Kotlin-first”意味著什么?在今年的 Google I/O 大會上,van Gogh 對使用 Java 和 Kotlin 開發的后果作了詳細地說明。Android app開發,
“當然,我們在很多方面將繼續支持 Java 編程語言,”他在出示下面這張表時說道。? ? ?
圖片來源:谷歌
“但是,如果你看看其他的地方,比如我們的在線培訓示例,我們將首先使用 Kotlin 編程語言,然后我們將"盡力而為(best effort)"地使用 Java。當然,還有一些功能,比如多平臺項目和?Jetpack Compose UI 工具包,這些功能只會用 Kotlin 語言提供。”
Google 已經在一系列自己的產品中開始使用 Kotlin 語言的這一現實,很好地回答 Android 開發者是否應該從 Java 切換到 Kotlin 這個問題。android kotlin java。對于 Google 而言,已經開始使用 Kotlin 的產品包括 Google Drive、Google Home、Nest 和 Android SystemUI。
“請不要把“Kotlin-first”理解成你需要用 Kotlin 來重新改寫你所有的 Java 代碼。這不是我們希望你做的,”他說道,此外,他還補充道,Google 本身也沒有打算用 Kotlin 重寫現有的所有軟件。
“看看 Android Studio,這是成千上萬行的代碼。android彈出選擇框?現在只有 10% 的 Android Studio 的特定代碼是用 Kotlin 寫的。”
“我們采取的做法是,我們只用 Kotlin 來編寫新的功能。這是可行的,因為 Kotlin 與 Java 具有很強的互操作性。你可以用 Kotlin 編寫單個類,并將其它所有的類交給 Java;或者用 Kotlin 編寫 99% 的代碼,而將剩余的部分交給 Java。Android9編譯系統,”
他補充說,還需要考慮一些復雜因素,比如說 App 開發所處的階段,他說顯然在項目開始的時候就使用 Kotlin 來實現新功能更加有意義。
他還說,另一個問題是開發團隊內部對 Kotlin 到底有多大的熱情。
“這取決于你的團隊。他們對 Kotlin 語言感興趣嗎?他們對采用它有安全感嗎?”他說。android開發框架。
van Gogh 同時指出,采用 Kotlin 也有一些不利因素需要權衡。比如開發人員需要一段時間才能熟悉 Kotlin 的慣用方法,來編寫出符合規范的代碼。
他說:“Kotlin 語言有很好的特性,更高的生產率和滿意度,但你必須考慮學習曲線,人們需要時間來學習 Kotlin 的慣用方法,來編寫出符合規范的代碼。”
“我們看到大多數人在第一周開始寫 Kotin 時,他們實際上是在用 Kotlin 寫 Java 代碼,他們花了三到六個月的時間才真正開始寫符合 Kotlin 習慣的代碼。java kotlin?”
他說,由于 Kotlin 編譯器通常比使用 Java 的速度慢,軟件構建過程也需要更長的時間,不過 Google 正在“努力”提升編譯器的速度。
他補充說,當使用 Kotlin 時,生成的 APK(用于在安卓設備上安裝應用程序的軟件包)也相對較大。
他說,Google 在 Android 系統上有“一大堆正在進行的 Kotlin 工作”,包括?Jetpack Compose?的開發工作、用于 Jetpack 的新 Kotlin 擴展(KTX)API 的開發工作,正在努力提升最新的 1.3.30 版 Kotlin 中的編譯器速度的構建工作,以及改進工具、文檔和示例代碼的開發工作。
原文:https://www.techrepublic.com/article/should-android-devs-switch-from-java-to-kotlin-heres-googles-advice-on-swapping-programming/
本文為 CSDN 翻譯,轉載請注明來源出處。Android10?
【END】
作為碼一代,想教碼二代卻無從下手:
聽說少兒編程很火,可它有哪些好處呢?
孩子多大開始學習比較好呢?又該如何學習呢?
最新的編程教育政策又有哪些呢?
下面給大家介紹CSDN新成員:極客寶寶(ID:geek_baby)
戳他了解更多↓↓↓
?熱 文?推 薦?
??英特爾將開源進行到底!
??這家公司的 IoT ,你可千萬別低估!
Windows 多個系統版本驚現大漏洞,攻擊者可隨意操作程序!
??普通家庭走出信息學才子,抱病參賽奪世界信奧亞軍 | 人物志
??程序員專屬小情話,哎呦,不錯哦!| 程序員有話說
Rust今天4歲啦, 為什么越來越多的知名項目用Rust來開發?
騰訊面試:一條SQL語句執行得很慢的原因有哪些?
??商湯“變法”:推中小學AI教材,mini自駕車,要打造AI時代的「清明上河圖」
??刺激!華為程序員年薪200萬 ?真相讓人心酸!
點擊閱讀原文,輸入關鍵詞,即可搜索您想要的 CSDN 文章。
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态