【2017 Google IO】Android 開發者關心的都在這!

版權聲明:本文爲博主原創文章,轉載請註明出處。 https://blog.csdn.net/leaf_130/article/details/72574839

背景

美國時間 5月 17 日,Google
舉辦了成立以來一年一度的開發者大會,我更覺得是“產品發佈會”。各種炫酷科技,好玩的產品以及走在世界前沿的新技術。

今年的 Google I/0 2017 也不例外,除了一些高科技比如:Google Home、Google Lens
外,最令程序員關心的無非就是新一代的 Android 系統。

去年 I/O 大會帶來的是 Android 7.0 牛軋糖(Nougat),今年 Google 給我們帶來了全新一代的 Android
系統- Android 8.0 Oreo,奧利奧。

下面一起來看看都有哪些值得我們關注的:

畫中畫模式:

簡單的說就是多窗口的功能,比如一邊看視頻一邊網購一邊和女票聊天;

智能剪貼板:

不在是瀏覽器層面的“記住密碼”,在新系統中,當你打開一個 app 需要輸入登錄信息(假如你曾經在 Chrome 輸入過賬號和密碼),這時候 智能剪貼板 將會自動提醒你粘貼輸入。這樣的描述是無法體會到其中的強大之處, 只有親手操作使用纔會有真實的感受。

後臺進程管理:

允許用戶限制後臺進程,這無疑會提升 Android 0 的續航能力。

基於機器學習的文字識別:

在 Android O 中,當用戶打開任意一個文本,神經網絡都能識別並瞭解到它是什麼,並幫助用戶自動選擇正確的內容。

再也不用擔心手指太粗、無法正確選中,總是喪心病狂戳屏幕啦,文本識別功能甚至可以幫用戶判斷打開選中部分所需要的app:例如選中一段地址,谷歌地圖會提示彈出;選中一個郵件地址,Gmailapp也會提示彈出。

Kotlin 語言:

Kotlin 是一門支持多範式、多平臺的現代靜態編程語言。

  • Kotlin 是一個基於 JVM 的新的編程語言,由 JetBrains 開發。
  • Kotlin 可以編譯成 Java 字節碼,也可以編譯成 JavaScript,方便在沒有JVM的設備上運行。
  • JetBrains,作爲目前廣受歡迎的 Java IDE IntelliJ 的提供商,在 Apache 許可下已經開源其 Kotlin 編程語言。

  • 重點是:
    Kotlin 已正式成爲 Android 官方開發語言。

作爲壓軸出場的 Kotlin 語言,而且 Google 也任命其爲 Android 的官方開發語言,作爲 Android 開發工程師們,有必要深入瞭解一下 Kotlin。

Kotlin 的特性

很多人猜測這是一款和蘋果 Swift 一樣專爲移動平臺優化的開發語言。其實,JetBrains 在 2010 年首次推出 Kotlin 編程語言,並在次年將之開源。

Android Studio 3.0 已經整合了對 Kotlin 的支持,不再需要額外安裝插件。

JetBrains 表示,他們會繼續支持其它平臺。如果你還記得的話,去年曾有報道稱 Google Android 考慮採用蘋果的 Swift 語言,而 Swift 就被稱爲是蘋果的 Kotlin。

兼容性:

Kotlin 與 JDK 6 完全兼容,確保 Kotlin 應用程序可以在較舊的 Android 設備上運行,無任何問題。

它是一個運行在 Java 虛擬機上的靜態類型編程語言。Kotlin 雖然與 Java 的語法不兼容,但設計成可以與 Java 代碼互操作,可複用現有的 Java 類庫。

Kotlin 工具在 AndroidStudio 中完全支持,與 Android 構建系統兼容。

性能

Kotlin 應用程序運行速度與 Java 類似,非常類似的字節碼結構。

隨着 Kotlin 對內聯函數的支持,使用 lambdas 的代碼通常比使用 Java 編寫的代碼運行得更快。

互操作性

Kotlin 可與 Java 進行 100% 互操作,允許在 Kotlin 應用程序中使用所有現有的 Android 庫。

Kotlin 能夠與既有工具 / 框架如 Dagger、Spring、Vert.x 等集成,也能讓既有的基於 Java 的服務端與 Android 項目逐步遷移到 Kotlin。

Kotlin 可與 Java 語言無縫通信。這意味着我們可以在 Kotlin 代碼中使用任何已有的 Java 庫;同樣的 Kotlin 代碼還可以爲 Java 代碼所用

佔用空間

Kotlin 有一個非常緊湊的運行時庫,可以通過使用 ProGuard 進一步減少。

在真實的應用程序中,Kotlin 運行時只添加了幾百種方法,並且小於等於 100K 的 .apk 文件的大小。

編譯

Kotlin 支持高效的增量編譯,因此,對於清理構建來說,增加的構建通常與 Java 一樣快或更快。

簡潔和安全性

Kotlin 比 Java 更安全,能夠靜態檢測常見的陷阱。如:引用空指針;

Kotlin 比 Java 更簡潔,通過支持 variable type inference,higher-order functions (closures),extension functions,mixins and first-class delegation 等實現。

Kotlin 在代碼中很少需要在代碼中指定類型,因爲編譯器可以在絕大多數情況下推斷出變量或是函數返回值的類型。這樣就能獲得兩個好處:簡潔與安全。

Google 的 Android 團隊稱讚 Kotlin 擁有出色的設計,是一種成熟的語言,能讓 Android 應用的開發更快更有趣。那麼我們作爲 Android 開發者,怎能不把握技術的潮流呢。

如何學習:

I/O 大會後,各大 Android 討論羣都沸沸揚揚的議論着 Kotlin 。有的開發者產生了焦慮:”java 都沒學好,現在又多出一門 Kotlin”。

其實大可不必焦慮,沒必要患得患失,更沒必要打亂自己的學習計劃。按照形勢來說,Kotlin 是必須要學的,但是並不是說 Java 就可以不學了。

從上面的 Kotlin 特性可以知道,Java 和 Kotlin 是互通的,並且在一定時間內 Kotlin 不可能完全替代 Java 進行開發的。

這個過渡期起碼得有個 2-3 年,就像當年谷歌放棄 Eclipse 選擇 Android Studio 一樣,雖然不再支持 Eclipse ,但是很多公司還有一些 老項目 必須得在 Eclipse 上維護開發一樣。

相信往後很長的一段時間,Android 項目還是以 Java 爲主,Kotlin 爲輔。學習 Kotlin 不是一件緊急的事,作爲一個技術人,要有自己的判斷力,大可不必趁着這次 Kotlin 的火熱去學,只需要把學習 Kotlin 加入自己的計劃即可。

編程語言都應該在思想上互通的,有編程基礎的開發者學習一門新語言都是很輕鬆的。

另外,很多新技術新動態都是從外國來的,所以把英文學好,直接看官方文檔是最好的學習方式。

學習新技術,首推官方文檔

  • 官網文檔

http://kotlinlang.org/docs/reference/android-overview.html

  • 官網

http://kotlinlang.org/

  • 國內中文文檔

https://huanglizhuo.gitbooks.io/kotlin-in-chinese/content/

http://www.liying-cn.net/kotlin/docs/reference/

  • Kotlin 官方文檔中文翻譯

gitbook.com/book/hltj/kotlin-reference-chinese

  • Kotlin 中文站首頁

https://www.kotlincn.net/

推薦的書籍

  • 《Kotlin for Android Developers》

這本書是 Antonio Leiva 的一本書,展示了 Kotlin 如何用於從頭開始創建 Android 應用程序。

總結

用馬雲爸爸的一句話結束本文:

要學會擁抱變化。世界上唯一不變的東西就是一切都在時刻改變,因此不要懼怕改變。




歡迎關注我的微信公衆號,獲取最及時的推送。

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章