當前位置:編程學習大全網 - 圖片素材 - Scala 是壹門怎樣的語言,具有哪些優缺點

Scala 是壹門怎樣的語言,具有哪些優缺點

Scala提供了幾乎妳能想到的所有編程語言特性:

快速實驗: Scala有交互式命令行(REPL), 可以在上面快速的試各種語法和代碼。這對學習新特性,或者實驗新想法非常有用。(第1章)

壹致性: 盡管Scala融合了靜態類型系統、面向對象、函數式編程等語言特性,但卻很少能看出融合的痕跡。Scala是我見到融合最多語言特性而又不顯得雜亂的編程語言之壹。

類型安全:Scala創始人是教授,他先帶領創建了Java 5編譯器,而後覺得Java有太多羈絆而發明了Scala。 Scala編譯器和類型系統非常強大,它的目標是盡量把軟件錯誤消滅在編寫過程中。 Scala類型系統是圖靈完備的,甚至可以在編譯期間解決問題。

面向對象: Scala是面向對象的編程語言,所有的變量和方法都封裝在對象中,可以把信息封裝起來供外部使用。(第2章)

函數式編程:Scala同時又是函數式編程語言,函數可以獨立存在,可以定義壹個函數作為另壹個函數的返回值,也可以接受函數作為函數的參數。這給組合函數帶來了很大的便利。如何把面向對象編程形容成搭積木的話,函數式編程就像拼線條,更靈活和更有創意。(第3章)

異步編程: 由於函數式編程提倡變量不可變,使異步編程變得非常容易。同時Scala提供的Future(第5章), 和akka類庫(第9-11章),使得異步編程變得非常容易。

基於JVM: Scala會被編譯成為jvm bytecode,所以Scala能無縫集成已有的Java類庫。妳可以非常自然的使用已經存在的非常龐大且穩定的Java類庫,比如小巧好用的apache.common.*, 或者Java上的各種工具類庫。

因為如此眾多特性,用Scala可以優雅地編寫簡潔的代碼,同時又能減少很多低級錯誤;能快速進行開發,又能保證系統性能、團隊協作和長期維護。

此圖只說明了Scala高階函數的優勢,Java 8已經擁有部分函數式的能力。

orders.flatMap(o -> o.products)

  • 上一篇:OA系統職稱評定流程,對員工工作表現與能力的肯定
  • 下一篇:我的美麗人生的劇集評價
  • copyright 2024編程學習大全網