Scala教學
Scala表示可擴展性語言,是一種混合函數式編程語言。它是由Martin Odersky創建,並於2003年首次發布。
Scala平滑地集成麵向對象和函數式語言的特點,並且Scala被編譯在Java虛擬機上運行。許多現有的企業依賴於Java的關鍵業務應用,正在轉向Scala以提高他們的開發效率,應用程序的可擴展性和整體可靠性。
下麵是Scala應用開發者首選的重要特征列表。
Scala是麵向對象:
Scala的每一個值都是一個對象,它是意義上的純麵向對象語言。對象的類型和行為特征將在以後的章節解釋說明。類由子類,並作為一種乾淨替代多重繼承,靈活基於mixin組合機製擴展。
Scala是函數:
Scala的每一個函數為一個值,因為每個值是一個對象,因此最終每一個功能都是一個對象意義上的函數。
Scala提供了一個輕量級的語法用來定義匿名函數,支持高階函數,它允許函數嵌套,並支持curry處理。這些概念將在以後的章節中解釋。
Scala是靜態類型:
Scala不像其他一些靜態類型語言,並不期望提供冗餘類型信息。不必在大多數情況下指定類型,當然也不需要重複。
Scala在JVM上運行:
Scala被編譯成由Java虛擬機(JVM)執行的Java字節碼。這意味著,Scala和Java可在一個共同的運行平台。可以輕鬆地從Java代碼移動到Scala。
Scala編譯器編譯Scala代碼轉換為Java字節碼,可以通過scala命令執行。Scala的命令類似於java命令,因為它可以執行編譯Scala代碼。
Scala可以執行Java代碼:
Scala可以使用在Java SDK的Scala中的所有類,也是自定義Java類或者Java開源項目。
Scala vs Java:
Scala有一組功能,它不同於Java。其中一些功能是:
-
所有類型的對象。
-
類型推測。
-
嵌套函數。
-
函數是對象。
-
領域特定語言(DSL)的支持。
-
特質。
-
閉包。
-
並發支持靈感來自Erlang。
Scala Web框架:
Scala被到處用於企業Web應用程序。可以查看最流行的幾個Scala中 Web框架: