目前google對kotlin的推廣力度越來越大,
一/爲什麼要轉Kotlin
上次google開發者大會把kotlin列爲第一類開發語言之後,19年的google開發大會,google已經把kotlin正式列爲第一開發語言,優先級已經高於java了。
那麼kotlin有什麼優勢呢?
1.可互操作:於Android SDK和Java程序語言兼容。
2.與其它工具兼容:由IntelliJ設計,可與IntelliJ完美搭配使用。PS:其實於Android studio也是完美兼容的。
3.安全:默認情況下,可避免空指針異常情況發生。
4.簡潔:可減少樣板代碼的使用。PS:畢竟kotlin就是當初JetBrains那羣人覺得java書寫不方便才創造出來的。
(PS:上面四條是google自己列出來的)
5.google強推。google自己說的,後續很多google提供的支持庫有可能優先會用kotlin來實現。
6.版權問題。衆所周知,java屬於甲骨文。後續說不定哪天還會圍繞android使用java來打官司,使用kotlin可以避開這個版本問題。
7.學習簡單。kotlin的代碼風格更偏向JS,有JS功底的人學kotlin會相當方便。kotlin完美兼容java,java工程師轉到kotlin,一般入門只需要一天,熟悉一週,一個月後可熟練運用。
8.轉換輕鬆。android studio提供一鍵把java代碼轉換爲kotlin的功能。
有沒有缺點呢?有
1.個人感覺唯一的缺點就是斷點調試/改值時不太方便。
2.使用kotlin編寫打出來的apk包,要比使用java的略大一點。
二/如何說服管理層轉Kotlin
先看張圖,google提供:
我的看法:
1.空指針安全,降低崩潰率;
2.完成同樣的功能寫更少代碼,提高團隊效率;
3.未來趨勢;
三/工程如何遷移到Kotlin
1.測試用例先開始使用kotlin編寫;
2.新加的類開始使用kotlin編寫;
3.局部項目技改,技改時把java工程轉爲kotlin;
4.分模塊,把一個一個的模版轉換爲kotlin。
我之前所在的公司,這四步,整個流程走下來,大約耗費了一年。