函數式程式設計是一種程式設計範例,其中程式是透過套用和組合函數來建構的。這是一種宣告式程式設計範例,其中函數定義是表示式的樹狀結構,每個表示式會傳回一個值,而不是會變更程式狀態的一系列命令式陳述式。
在函數式程式設計中,函數被視為一級公民,這表示它們可以繫結到名稱(包括區域識別碼),傳遞為參數,並從其他函數傳回,就像任何其他資料類型一樣。這允許程式以宣告式和可組合的方式撰寫,其中小型函數以模組化方式組合。
了解有經驗的函數式程式設計師非常希望將他們的程式碼視為數學,將純粹函數組合在一起就像組合一系列代數方程式一樣,這也可能有所幫助。
當你撰寫函數式程式碼時,你會感覺像個數學家,一旦你了解範例,你就會想要撰寫始終傳回值的純粹函數,而不是例外或空值,這樣你就可以將它們組合(組合)在一起以建立解決方案。你正在撰寫類數學方程式(表達式)的感覺是你使用僅純粹函數和不變值的驅動力,因為這正是你在代數和其他形式的數學中所使用的。
函數式程式設計是一個龐大的主題,沒有簡單的方法可以將整個主題濃縮成一章,但希望以下各節將提供主要主題的概述,並展示 Scala 提供的一些用於撰寫函數式程式碼的工具。
此頁面的貢獻者
內容
- 簡介
- Scala 功能
- 為什麼是 Scala 3?
- Scala 的品味
- 你好,世界!
- REPL
- 變數和資料類型
- 控制結構
- 網域建模
- 方法
- 一級函數
- 單例物件
- 集合
- 脈絡抽象
- 頂層定義
- 摘要
- 類型初探
- 字串內插
- 控制結構
- 網域建模
- 工具
- OOP 建模
- FP 建模
- 方法
- 方法特徵
- Scala 3 中的主要方法
- 摘要
- 函數
- 匿名函數
- 函數變數
- Eta 展開
- 高階函數
- 撰寫您自己的 map 方法
- 建立會傳回函數的方法
- 摘要
- 封裝和匯入
- Scala 集合
- 集合類型
- 集合方法
- 摘要
- 函式程式設計
- 什麼是函數式程式設計?
- 不可變值
- 純函數
- 函數是值
- 函式錯誤處理
- 摘要
- 類型和類型系統
- 推論類型
- 泛型
- 交集類型
- 聯集類型
- 代數資料類型
- 變異性
- 不透明類型
- 結構類型
- 依賴函數類型
- 其他類型
- 脈絡抽象
- 擴充方法
- 脈絡參數
- 脈絡邊界
- 已給定的匯入
- 類型類別
- 多重宇宙等式
- 隱式轉換
- 摘要
- 並行處理
- Scala 工具
- 使用 sbt 建立並測試 Scala 專案
- 工作表
- 與 Java 互動
- 供 Java 開發人員使用的 Scala
- 供 JavaScript 開發人員使用的 Scala
- 供 Python 開發人員使用的 Scala
- 下一步