
本指南適用於對 Clojure 至少具備基本了解,並希望更熟練使用 Clojure REPL 的開發人員。
Clojure REPL(代表讀取-評估-列印迴圈)是一種程式設計環境,讓程式設計人員能夠與正在執行的 Clojure 程式互動並修改它,一次評估一個程式碼表達式。
Clojure REPL 為程式設計人員提供互動式開發體驗。在開發新功能時,它讓程式設計人員能夠先手動執行小任務來建構程式,就好像他們就是電腦一樣,然後逐漸讓它們越來越自動化,直到完全編寫出所需的功能。在除錯時,REPL 會讓程式的執行感覺有形:它讓程式設計人員能夠快速重現問題、仔細觀察其症狀,然後即興進行實驗,以快速縮小錯誤原因並反覆進行修正。
許多 Clojure 程式設計人員認為 REPL 及其提供的緊密回饋迴圈是使用 Clojure 最令人信服的理由。這並不表示 Clojure 的語言功能(例如不可變資料結構)沒有價值:Clojure REPL 能發揮其大部分優勢是因為這些功能,特別是因為 Clojure 是以互動式開發為考量而設計的。
在 Clojure 中,程式設計人員通常會將 REPL 用於各種程式設計任務,而在其他語言中,他們會使用其他類型的工具。這些任務包括
啟動本地開發環境,
執行自動化測試套件,
一次性資料庫查詢和介入,
除錯,
協調遠端機器,
熟悉函式庫和 API,
…以及許多形式的探索。
基本上,程式設計師在所有這些任務中使用 REPL 的原因始終相同:因為他們想要自動化和即興發揮的組合,而這既不能由完全手動的工具(例如儀表板、主控台等)提供,也不能由完全自動化的工具(例如腳本)提供,同時讓工作流程集中在一個功能齊全的程式設計環境中。
本指南將從 Clojure REPL 入門開始,然後逐漸轉向越來越進階的 Clojure REPL 使用方式。
根據您的需求,您可能不需要閱讀本指南的全部內容
如果您才剛開始學習 Clojure,前 2 章 啟動基本 Clojure REPL 和 基本用法 就足以讓您開始建立一個高效的學習環境。
一旦您開始開發非平凡的程式(例如愛好網頁應用程式),您將需要至少後 2 章中提出的概念:REPL 中的資料視覺化 和 瀏覽命名空間。
對於在專業層級上從事 Clojure 專案,提升您的 REPL 工作流程 和 REPL 輔助開發指南 是必讀內容。
首先,我們將學習如何 啟動基本 Clojure REPL。