
- Scala 教程
- Scala - 首頁
- Scala - 概述
- Scala - 特性
- Scala - 環境搭建
- Scala - 構建工具 (SBT)
- Scala - 基本語法
- 資料型別和變數
- Scala - 資料型別
- Scala - 變數
- Scala - 字串
- Scala - 陣列
- Scala 運算子
- Scala - 運算子
- Scala - 算術運算子
- Scala - 關係運算符
- Scala - 邏輯運算子
- Scala - 位運算子
- Scala - 賦值運算子
- Scala 條件語句
- Scala - IF ELSE
- Scala 迴圈語句
- Scala - 迴圈語句
- Scala - while 迴圈
- Scala - do-while 迴圈
- Scala - for 迴圈
- Scala - break 語句
- Scala 類和物件
- Scala - 類和物件
- Scala - 訪問修飾符
- Scala 方法和函式
- Scala - 函式
- Scala - 按名稱呼叫函式
- Scala - 帶命名引數的函式
- Scala - 帶變長引數的函式
- Scala - 遞迴函式
- Scala - 預設引數值
- Scala - 高階函式
- Scala - 巢狀函式
- Scala - 匿名函式
- 部分應用函式
- Scala - 柯里化函式
- Scala 集合
- Scala - 集合
- Scala - 列表
- Scala - 集合
- Scala - 對映
- Scala - 元組
- Scala - 迭代器
- Scala - Option
- Scala 模式匹配
- Scala - 模式匹配
- Scala - 異常處理
- Scala - 提取器
- Scala - 正則表示式
- Scala 檔案 I/O
- Scala - 檔案 I/O
- Scala 高階概念
- Scala - 閉包
- Scala - 特質
- Scala 有用資源
- Scala - 快速指南
- Scala - 線上編譯器
- Scala - 有用資源
- Scala - 討論
Scala - 概述
Scala(Scalable Language 的縮寫)是一種混合函數語言程式設計語言。它由 Martin Odersky 建立。Scala 平滑地集成了面向物件和函式式語言的功能。Scala 編譯後可在 Java 虛擬機器上執行。許多依賴 Java 進行業務關鍵應用程式的現有公司正在轉向 Scala 以提高其開發效率、應用程式可擴充套件性和整體可靠性。
這裡我們列舉了一些使 Scala 成為應用程式開發者首選的原因。
Scala 是面向物件的
Scala 是一種純粹的面嚮物件語言,因為每個值都是一個物件。物件型別和行為由類和特質描述,這些將在後續章節中解釋。
類透過子類化擴充套件,並且一個靈活的基於 mixin 的組合機制作為多重繼承的乾淨替代。
Scala 是函式式的
Scala 也是一種函式式語言,因為每個函式都是一個值,每個值都是一個物件,所以最終每個函式都是一個物件。
Scala 提供了輕量級的語法來定義匿名函式,它支援高階函式,允許函式巢狀,並支援柯里化。這些概念將在後續章節中解釋。
Scala 是靜態型別的
與其他一些靜態型別語言(C、Pascal、Rust 等)不同,Scala 不需要您提供冗餘的型別資訊。在大多數情況下,您不必指定型別,當然也不必重複。
Scala 執行在 JVM 上
Scala 編譯成 Java 位元組碼,由 Java 虛擬機器 (JVM) 執行。這意味著 Scala 和 Java 具有共同的執行時平臺。您可以輕鬆地從 Java 切換到 Scala。
Scala 編譯器將您的 Scala 程式碼編譯成 Java 位元組碼,然後可以透過 'scala' 命令執行。'scala' 命令類似於 java 命令,它執行您編譯後的 Scala 程式碼。
Scala 可以執行 Java 程式碼
Scala 使您可以使用所有 Java SDK 類以及您自己的自定義 Java 類或您喜歡的 Java 開源專案。
Scala 可以進行併發和同步處理
Scala 允許您以有效的方式表達一般的程式設計模式。它減少了程式碼行數,並幫助程式設計師以型別安全的方式編寫程式碼。它允許您以不可變的方式編寫程式碼,這使得應用併發和並行(同步)變得容易。
Scala vs Java
Scala 擁有一套與 Java 完全不同的特性。其中一些是:
- 所有型別都是物件
- 型別推斷
- 巢狀函式
- 函式是物件
- 領域特定語言 (DSL) 支援
- 特質
- 閉包
- 受 Erlang 啟發的併發支援
Scala Web 框架
Scala 廣泛應用於各個領域,尤其是在企業 Web 應用程式中。您可以檢視一些最流行的 Scala Web 框架: