中文字幕一区二区人妻电影,亚洲av无码一区二区乱子伦as ,亚洲精品无码永久在线观看,亚洲成aⅴ人片久青草影院按摩,亚洲黑人巨大videos

Kotlin 1.4發(fā)布以提高性能

發(fā)布于:2020-12-24 16:05:39

0

147

0

Kotlin 后端 性能 JetBrains

上周,JetBrains向編程社區(qū)發(fā)布了Kotlin 1.4。 該更新增加了一些新的語言功能,但也將重點(diǎn)放在改善生活質(zhì)量和性能上,特別是與JetBrains自己的IntelliJ IDEA IDE結(jié)合使用時(shí)。

Kotlin是一種最著名的編程語言,即“無疣的Java”。 它既可以編譯為Java字節(jié)碼和本機(jī)代碼,也可以編譯為JavaScript。 三年來,它一直是我們最受歡迎的五種語言之一,這在一定程度上要?dú)w功于Android開發(fā)采用了Kotlin優(yōu)先方法,因此在今年的調(diào)查中,它已成為最受歡迎的第13種語言。 Java仍然更受歡迎并且正在積極開發(fā)中,但是Kotlin游擊隊(duì)的人們對(duì)此表示贊賞。

那么用戶可以從這個(gè)新版本中得到什么呢? 繼續(xù)閱讀。

性能提升

此版本的主要重點(diǎn)是全面提高性能。 Jetbrains(和其他貢獻(xiàn)者)修復(fù)了60多個(gè)與性能相關(guān)的問題。 其中包括許多IDE錯(cuò)誤,這些錯(cuò)誤會(huì)減慢速度,導(dǎo)致內(nèi)存泄漏和凍結(jié)。 自動(dòng)完成結(jié)果現(xiàn)在可以更快地浮出水面,這是使用IDE公司創(chuàng)建的編程語言的好處之一。

對(duì)于性能下降,沒有什么比編譯器更好。 大量的編譯時(shí)間消耗了開發(fā)人員的生產(chǎn)力,因此此發(fā)行版包含一個(gè)全新的編譯器。 Kotlin代碼應(yīng)該可以更快地編譯到任何受支持的目標(biāo)平臺(tái)。 此外,他們添加了一個(gè)API,該API允許將來擴(kuò)展到編譯器。

功能接口

以前僅在使用Java編寫接口時(shí)才支持單抽象方法(SAM)接口(即功能接口)。 盡管Kotlin可與Java庫互操作,但這可能會(huì)導(dǎo)致復(fù)雜化,您必須使用Java編寫接口并使用Kotlin編寫實(shí)現(xiàn)。 隨著lambda表達(dá)式的相關(guān)性日益增加,這變得越來越繁重,并且與Kotlin保持簡潔并提高開發(fā)人員滿意度的理念不符。

使用Kotlin現(xiàn)在直接支持的SAM接口,您可以自動(dòng)將與SAM接口匹配的lambda表達(dá)式轉(zhuǎn)換為實(shí)現(xiàn)該接口的類的實(shí)例,而無需手動(dòng)編寫實(shí)現(xiàn)類。

顯式API模式

與編寫應(yīng)用程序的開發(fā)人員相比,圖書館作者還有一個(gè)額外的麻煩:可見性。 他們需要確保任何具有其功能的人以及以該庫為依賴項(xiàng)的任何人都可以看到其API方法,并且需要知道任何公開變量的類型。 默認(rèn)情況下可見,可能意味著開發(fā)人員公開了應(yīng)用程序開發(fā)人員從未看到過的內(nèi)容,而明確隱藏以前可見的內(nèi)容則意味著破壞了更改。

在顯式API模式下,所有方法都必須聲明其可見性,并且必須指定所有類型。 這是一個(gè)編譯器功能,可以作為gradle設(shè)置或命令行選項(xiàng)使用,并且可以拋出警告或錯(cuò)誤,具體取決于您對(duì)API庫的態(tài)度如何。

語法便利

為了使開發(fā)人員的生活更輕松,Kotlin 1.4添加了許多小語言功能,有助于避免被疏忽所致:

  • 在函數(shù)中混合命名和位置參數(shù)。是否想通過明確提及參數(shù)名稱來澄清參數(shù)?現(xiàn)在,您可以避免出現(xiàn)錯(cuò)誤。例如`reformat('This is a String!',uppercaseFirstLetter = false,'-')`以前,您只能按方法中指定的順序傳遞值。

  • 尾隨逗號(hào)?,F(xiàn)在,在任何用逗號(hào)分隔的值或參數(shù)列表中,您都可以在列表末尾添加逗號(hào),而不會(huì)引起錯(cuò)誤。對(duì)于定期編輯并隨時(shí)間變化的列表很有用。

  • 循環(huán)時(shí)在未標(biāo)記的情況下使用`continue`和`break`。這些關(guān)鍵字現(xiàn)在可以按原樣使用,而無需使用`@ LOOP`進(jìn)行標(biāo)記。

這些新功能會(huì)繼續(xù)Kotlin的增長,還是只是讓現(xiàn)有的基礎(chǔ)滿意?在評(píng)論中讓我們知道,如果您認(rèn)為這些添加中的任何一個(gè)使Kotlin成為Java的殺手or,或者它們只是在大肆宣傳。