上門編程教學課程內容
本課程專為初學者與想快速掌握 Clojure 函數式編程(Functional Programming) 思維的學員設計。Clojure 是一種現代化的 Lisp 方言,運行於 Java Virtual Machine(JVM) 之上,結合 Lisp 的彈性與 Java 的穩定性,廣泛使用於 資料處理、AI 應用、併發系統與後端服務 開發。
三小時的精華入門課程將帶領學員從零開始理解 Clojure 的語法、資料結構與函數思維,逐步體驗不可變資料(Immutable Data)、高階函數與 REPL 互動環境的魅力。
適合對象:
學習成果:
課程時長
3 小時(180 分鐘)
理論與實作比例約 4 : 6
課程大綱
第一部份:Clojure 概論與開發環境介紹(30 分鐘)
-
Clojure 的起源與應用領域
-
與其他語言(Java、Scala、Lisp)的比較
-
Clojure REPL(Read-Eval-Print Loop)互動環境介紹
-
開發環境建置(Leiningen、Clojure CLI、VS Code + Calva)
-
實作:輸入第一個命令 (println "Hello, Clojure!")
第二部份:語法基礎與資料結構(40 分鐘)
-
S-Expression(符號表達式)語法結構
-
基本資料型別(number、string、keyword、boolean、symbol)
-
核心資料結構:List、Vector、Map、Set
-
Immutability(不可變資料)的重要性
-
實作練習:建立資料結構與基本操作(add、assoc、update)
第三部份:函數與控制流程(40 分鐘)
第四部份:高階函數與資料操作(40 分鐘)
-
map、reduce、filter 等資料處理函數
-
匿名函數簡化寫法(#() 語法)
-
sequence(序列)與 Lazy Evaluation(惰性計算)
-
簡介:threading 宏(->、->>)與程式可讀性提升技巧
-
實作:清單資料分析與統計範例
第五部份:實務應用與延伸發展(30 分鐘)
-
互動式 REPL 開發與測試技巧
-
與 JVM 整合:呼叫 Java 類別與庫(Interoperability)
-
併發程式設計概念(Agent、Atom、Ref、Future)
-
實作:小型文字處理或資料轉換專案
-
延伸學習方向:ClojureScript、Datomic、AI 問題建模
課程特色