1. 程式人生 > >棄 Java 而使用 Kotlin 的你後悔了嗎?| 2018 Kotlin 調查報告

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

640?wx_fmt=gif

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

的無奈感嘆,那麼 Kotlin 現狀究竟如何?

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

640?wx_fmt=png

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

640?wx_fmt=png

年輕的開發者更鐘愛 Kotlin

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

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

640?wx_fmt=png

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

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

640?wx_fmt=png

Kotlin 更多的是用於個人專案,而非企業專案

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

640?wx_fmt=png

最愛的特性

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

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

640?wx_fmt=png

Kotlin 的未來

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

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

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


徵稿啦

CSDN 公眾號秉持著「與千萬技術人共成長」理念,不僅以「極客頭條」、「暢言」欄目在第一時間以技術人的獨特視角描述技術人關心的行業焦點事件,更有「技術頭條」專欄,深度解讀行業內的熱門技術與場景應用,讓所有的開發者緊跟技術潮流,保持警醒的技術嗅覺,對行業趨勢、技術有更為全面的認知。

如果你有優質的文章,或是行業熱點事件、技術趨勢的真知灼見,或是深度的應用實踐、場景方案等的新見解,歡迎聯絡 CSDN 投稿,聯絡方式:微信(guorui_1118,請備註投稿+姓名+公司職位),郵箱([email protected])。

————— 推薦閱讀 —————

640?wx_fmt=png

640?wx_fmt=jpeg

640?wx_fmt=jpeg

640?wx_fmt=gif

640?wx_fmt=gif

相關推薦

no