Kotlin:定義和目的

Kotlin主要特征

1. 目標平臺
服務器端、Android設備、Java運行的平臺
2. 靜態(tài)語言
所有表達式類型在編譯期已經(jīng)確定
Kotlin具有類型推導能力,可以從上下文推斷變量類型
3. 函數(shù)式編程
核心概念

  • 頭等函數(shù)
    把函數(shù)當作值,可以用變量保存,可以作為參數(shù)傳遞,或當作其他函數(shù)返回值
  • 不可變性
    使用不可變對象,保證創(chuàng)建后不能改變
  • 無副作用
    使用純函數(shù),函數(shù)返回值只取決于參數(shù),不產(chǎn)生副作用

函數(shù)副作用是指函數(shù)在正常工作任務之外對外部環(huán)境所施加的影響。
函數(shù)副作用是指函數(shù)被調(diào)用,完成了函數(shù)既定的計算任務,但同時因為訪問了外部數(shù)據(jù),尤其是因為對外部數(shù)據(jù)進行了寫操作,從而一定程度地改變了系統(tǒng)環(huán)境。
函數(shù)的副作用也有可能是發(fā)生在函數(shù)運行期間,由于對外部數(shù)據(jù)的改變,導致了同步運行的外部函數(shù)受到影響。

函數(shù)式編程的好處

  • 代碼簡潔 使用lambda表達式
  • 多線程安全
  • 測試更加容易

Kotlin對函數(shù)式編程的支持

  • 函數(shù)類型,允許函數(shù)接受其他函數(shù)作為參數(shù),或返回其他函數(shù)
  • lambda表達式,樣板代碼方便傳遞代碼塊
  • 數(shù)據(jù)類,創(chuàng)建不可變對象的簡明語法
  • 標準庫有豐富的API

總結

  • Kotlin是靜態(tài)語言支持類型推導,在維護正確性與性能同時保持代碼整潔
  • Kotlin支持面向?qū)ο蠛秃瘮?shù)式兩種編程風格,頭等函數(shù)支持更高級別抽象,支持不可變值簡化測試和多線程開發(fā)
  • 支持服務器端現(xiàn)存的所有Java框架
  • 對Android API提供特殊編譯器支持及豐富的庫,為Android開發(fā)提供了Kotlin友好的函數(shù)
  • 與Java互操作性,且有效避免了空指針異常
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內(nèi)容