棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

作者 | 屠敏

自從 2011 年發佈以來,Kotlin 憑藉強大的功能在開發者中的歡迎程度與日俱增。且在一年前,Google 宣佈 Kotlin 正式成為 Android 官方開發語言,由此引發了從 Java 遷移到 Kotlin 的一股熱潮,根據 StackOverflow 上超過 10 萬名受訪者的調查顯示,Kotlin 成為第二大受歡迎的語言,第一名是 Mozilla 開發的系統編程語言 Rust 。

但是隨著技術的逐漸深入,不少開發者也發出從 Java 到 Kotlin,再到 Java 的無奈感嘆,那麼 Kotlin 現狀究竟如何?

對此,國外一家名為 Pusher 的公司在今年 1 月至 3 月期間基於 Kotlin 對世界範圍內的 2744 名 IT 人員進行了深入地調查,並於昨日正式發佈了《The State of Kotlin 2018》報告,分享瞭如今 Kotlin 的使用情況,以及生態系統的發展趨勢。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

接下來,將為大家一一介紹。

年輕的開發者更鐘愛 Kotlin

超過 70% 的受訪者是僱員,11% 是企業家和開發商。

他們主要從事技術工作,其次是金融、教育和數字代理。Kotlin 的應用領域中保險和政府最為保守。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

超過一半的受訪者表示其作為開發人員工作的時間不到 5 年,2-5 年工作經驗的佔 33.9%,1-2 年的佔 15.2%。本報告受訪者的工作經驗比參加 StackOverflow 調查的開發者要少一些。然而,“開發者數量每 5 年翻一番”的傳統理念依舊存在,未來 Kotlin 的開發者只會越來越多。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

企業中使用 Kotlin 的開發者人數差異較大,大約三分之一的人表示,他們公司裡 2-5 人使用 Kotlin 進行開發。這大致與開發 Android App 的團隊規模相匹配。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

Kotlin 使用率迅猛增長,但不是開發者的首選語言

Kotlin 的增長率每年都在翻倍,到了 2015 年,其使用量首次出現大幅飆升,從上一年的 1.4% 激增到 7.7%。對於增長的原因,想必和同年間 Android 大神 Jake Wharton 發佈的文檔(https://docs.google.com/document/d/1ReS3ep-hjxWA8kZi0YqDbEhCqTt29hG8P44aA9W0DM8)有關,該文檔旨在主張使用 Kotlin 進行開發,並創建了一些流行的 Android 開源庫。這就導致了很多的 Android 開發者效仿,並使用了 Kotlin 開始創建項目。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

而 2017 年 5 月,Google 宣佈 Kotlin 正式支持 Android,由此看出,大量 Android 開發者開始使用 Kotlin,佔比達到了 46.8%。這其中不乏有因 Google 品牌吸引而投身於 Kotlin 開發的學生,據調查顯示,早期,Kotlin 主要由經驗豐富的專業開發者使用,如今大批年輕的開發者及學生開始湧入。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

不過,目前 Java 仍佔主要地位,同時也有很多開發者使用其他的編程語言,諸如 JavaScript、Python、Swift、C# 等等,因此大多數的開發者並沒有將 Kotlin 作為其第一編程語言。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

Kotlin 更多的是用於個人項目,而非企業項目

受訪者中,有超過 60% 的開發者正在工作項目中使用 Kotlin。相比之下,有三分之一的受訪學生將其用於工作和輔助項目。 也就是說,他們中有近一半的人表示打算在未來開始使用它。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

據調查顯示,官方網站是 Kotlin 入門的首選資源,其次不少開發者通過 YouTube 和 Udemy 的課程、線上大會等方式進行學習。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

Kotlin 更多的是被用於私人項目,而非工作項目中。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

Android 是 Kotlin 的殺手級應用。當涉及到後端應用程序時,經驗豐富的開發者才會使用 Kotlin,而新手和學生一般不會選擇。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

最愛的特性

對於每位 Android 開發者來說,只要使用過 Java 的 NullPointerException 的特性都會喜歡上 Kotlin 的安全性能,其次分別是擴展函數、Java 的互操作性。有 77% 的受訪者表示,Kotlin 擴展功能往往使代碼更具可讀性,尤其是在函數編程環境中或創建 DSL 時。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

此外,超過 87% 的受訪者將現有的 Java 代碼轉換成 Kotlin 代碼。不過也有超過四分之一的開發者在將 Java 遷移到 Kotlin 之後因技術以及企業等原因後悔了。其中技術原因主要包括 Kotlin 的反射和生成代碼工具,以及以下等原因:

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

跨平臺 Kotlin 正在復甦,但速度較為緩慢。只有約四分之一的受訪者提到他們運用了一些跨平臺支持,大多數選擇 Kotlin / Native,其次是 KotlinJS。

棄 Java 而使用 Kotlin 的你後悔了嗎?|2018 Kotlin 調查報告

對於 Kotlin 的一些新功能及特性,如協同程序(Coroutines)、KotlinC、DSL 等也只有少數的受訪者才會使用,他們表示畢竟這些功能目前還不完善。

Kotlin 的未來

Kotlin 整體的發展速度還是讓不少開發者為之興奮。同時鑑於 JetBrains 和Google 的大力支持,以及開發者社區的熱捧,我們也相信它會越來越流行。但如今主要的問題是,它在未來是否會成功地入主 Android 以外的應用?

如今 JetBrains 正在大肆推動 Kotlin 的多平臺應用,它是否會得到大家的認可也仍未可知。但是想要它成為 Web、iOS 以及後端開發者新的標準,想必也還需要數年的時間來擴展。根據調查報告顯示,越多越多的開發者邁出了 Kotlin 編程的第一步,也可以在面向對象、函數、腳本之間穿梭。這就足以說明,Kotlin 正在滲入到整個開發的生態系統中。

  • 《The State of Kotlin 2018》:https://pusher.com/state-of-kotlin


分享到:


相關文章: