1. 程式人生 > >Kotlin使用率達35%,Java要退位了?

Kotlin使用率達35%,Java要退位了?

更新 tro 目前 java 編程 互聯 事件 替代品 kotlin

技術分享圖片

在今年的 Google I/O 大會上,關於 Kotlin,Google 只說了只言片語:

在過去一年裏,有 35% 的專業 Android 開發者在使用 Kotlin,其中 95% 的開發者都對 Kotlin 非常滿意。
之後就沒有再宣布關於 Kotlin 的重大消息或規劃了。但結合過去一年 Google 的種種,我們似乎得到了一個信息:Google 要拋棄 Java,Kotlin 要上位了!

為什麽這麽說呢?聽我慢慢道來......

事件背景

還記得 Google 的 Java 侵權案嗎?兩個月前,這件官司有了初步的結果:Google 被判賠償 Oracle 88 億美元。

事件的起因是在 2010 年,作為 Java 擁有者的 Oracle 認為,谷歌在 Android 系統上無償使用了 37 個 Java APIs,這侵犯了他們的專利,而在 Android 中還有 9 行代碼抄襲了 Java,這侵犯了他們的版權。

那 9 行代碼造成抄襲的緣由據說是因為當時 Google 的一位工程師在為 Android 項目工作的同時,又為 Sun 公司的 OpenJDK 效力,後來,該工程師直接從 OpenJDK 中復制了 9 行代碼到 Android 中,由於 Google 沒有得到 Sun 公司的授權,所以 Oracle 收購 Sun 之後,Java 易主,這就相當於侵犯了 Oracle 的版權。

而對於那 37 個 Java APIs,雙方各執己見,Google 認為 API 不應受版權保護,而 Oracle 則認為 Google 對其的使用具有很強的商業性,再加上用 Java 寫的 Android 代碼無法在 JVM 上運行,這對 Java 語言是一種分裂,同時 Oracle 認為,Android 通過不當使用 Java API 擠占了 Java ME 可能的市場,這是它巨額索賠的根基。

Google 做了什麽?

2016 年初,Google 發言人表示,Android N(7.0) 不再沿用現有的 Java APIs 內容,而是遷移至基於 OpenJDK 的方法,為開發者創建一個通用代碼庫。雖然沒法規避 Java APIs 官司,但至少可以減少潛在的可能糾紛。

到了去年的 Google I/O 大會,Google 宣布 Kotlin 成為 Android 開發的一級語言,可以說對 Kotlin 寄予了厚望。此後,Kotlin 也被開發者視為 Java 的替代品,更多請閱讀 Java VS Kotlin。

在之後的一年時間裏,Google 可以說把 Kotlin 當親兒子看待,為什麽這麽說呢?讓我們來梳理這一年 Google 為 Kotlin 做了什麽:

2017 年 11 月,Android Studio 3.0 正式開放下載,此版本的 Android Studio 將 Kotlin 語言支持集成到 IDE 中,在此版本上,代碼自動完成和語法突出顯示都可以在此版本上平穩運行,今年 4 月推出的 Android Studio 3.1 為 Kotlin 代碼提供了更好的 Lint 支持,並通過為 Android Emulator 添加 Quick Boot 功能加快了測試速度。
2018 年 2 月,Google 推出預覽版本的 Android KTX,Android KTX 是一組擴展程序,它在 Android 框架和支持庫上提供了一個良好的 API 層,使 Kotlin 代碼更加簡潔。
在 Google I/O 2018 上,Google 發布了 Android Jetpack,它是下一代的 Android 組件,它將支持庫向後兼容和立即更新的優點融合到更多組件中,提高開發速率和質量,不僅如此,Android Jetpack 將全面兼容 Kotlin,而且它還能利用 Android KTX 使得 Kotlin 代碼更加簡潔。
這些都是 Google 逐漸向 Kotlin 靠攏的證據,雖然還不至於讓 Kotlin 完全取代 Java,但不難看出 Google 的“偏心”。

如果你認為只有 Google 單方面在努力?那麽你錯了,在過去的一年中,Kotlin 自身也在成長與進步:

2017 年 11 月,在第一屆 Kotlin 專題大會 KotlinConf 上,Kotlin 首席設計師 Andrey Breslav 宣布 Kotlin 將支持 iOS 開發和 Web 開發,這意味著 Kotlin 向全平臺開發邁出了重要的一步。

雖然這和 Android 開發沒多大的關系,這只是想告訴你它得寵的原因不僅是因為它在 Google 與 Java 產生“嫌隙”之時橫空出世,而是它先天獨特的性能與後天的“爭氣”,占據了天時地利人和,才得到了 Google 的青睞。

Kotlin 目前正處於發展的初始階段,還有很多成長的空間,Google 現在是把它當成 Android 黃昏時期的救命稻草,它能與 Java 100% 互通,但它存在的目的並不是為了取代 Java,只是為了讓開發者有多種選擇。雖說編程語言只是軟件實現的一種工具,開發者無論選擇哪種語言都沒有絕對的對與錯。但在互聯網時代,開發者應該懂得審時度勢,擁抱變化,才能走得更遠。

喜歡小編輕輕點個關註吧!

Kotlin使用率達35%,Java要退位了?