iT邦幫忙

鐵人檔案

2018 iT 邦幫忙鐵人賽
回列表
Software Development

擁抱 Clojure 系列

Clojure 是一門建立在 JVM 上的 Lisp 方言。它將腳本語言的互動便利性,以及用於多執行緒程式設計的穩健基礎結合起來;它是一種編譯語言,卻保留了動態語言的強大。它提供了簡易的方法,可以輕鬆地存取 Java 函式庫。

Clojure 奉行「程式即爲數據」的 Lisp 哲學,並引入了強大的巨集系統;Clojure 亦是函數式程式語言,更爲了現今多核處理器的開發需求,提供了狀態管理的系統,以確保清晰、正確的多執行緒程式設計。

透過這一系列文章,希望帶領讀者體會及了解 Clojure 語言的優雅、強大與實用,進而在實戰環境中使用 Clojure、擁抱 Clojure。

鐵人鍊成 | 共 30 篇文章 | 15 人訂閱 訂閱系列文 RSS系列文
DAY 1

[第 01 天] 擁抱 Clojure:前言

前言 世界太新,很多事物還沒有名字,必須用手指頭伸手去指。 — 賈西亞•馬奎茲《百年孤寂》 Clojure 是什麼 Clojure 從 2007 年由創始人...

2017-12-20 ‧ 由 林萌 分享
DAY 2

[第 02 天] 擁抱 Clojure:基本組成(一)

基本組成(一) 運算式 Clojure 程式是由許多運算式 (Expression) 組合而成。在 Clojure 中,Expression (運算式) 也被稱...

2017-12-21 ‧ 由 林萌 分享
DAY 3

[第 03 天] 擁抱 Clojure:基本組成(二)

基本組成(二) 資料型態 布林 Clojure 程式語言使用 true 和 false 來表示邏輯上的真與假: true ;; => true false...

2017-12-22 ‧ 由 林萌 分享
DAY 4

[第 04 天] 擁抱 Clojure:資料結構與型態(一)

資料結構與型態(一) 本篇文章將介紹 Clojure 內建的的資料結構與型態,會先從簡單的資料型態如數字及字串開始,再介紹複雜的資料結構如群集 (Collect...

2017-12-23 ‧ 由 林萌 分享
DAY 5

[第 05 天] 擁抱 Clojure:資料結構與型態(二)

資料結構與型態(二) 字串與字符 Clojure 的字串即是 Java 的 String 類型,表現方法也跟 Java 一樣用雙引號包住文字: (class &...

2017-12-24 ‧ 由 林萌 分享
DAY 6

[第 06 天] 擁抱 Clojure:資料結構與型態(三)

資料結構與型態(三) 群集 Clojure 的複合型別稱爲群集 (Collection),可以容納基本型別跟複合型別,所有的群集都是不可變 (Immutable...

2017-12-25 ‧ 由 林萌 分享
DAY 7

[第 07 天] 擁抱 Clojure:繫結與函式(一)

繫結與函式(一) 函式是函數式程式設計的核心,雖然各個流派談及函數式程式設計,都有自己的定見和看法,但是不變的核心仍然是函式,函式必須是程式語言的第一級公民 (...

2017-12-26 ‧ 由 林萌 分享
DAY 8

[第 08 天] 擁抱 Clojure:繫結與函式(二)

繫結與函式(二) 函式 多載 Java 中將類別裡擁有數個同樣名字的方法 (Method),參數個數卻不同稱爲多載 (Overloading),Clojure...

2017-12-27 ‧ 由 林萌 分享
DAY 9

[第 09 天] 擁抱 Clojure:繫結與函式(三)

繫結與函式(三) 函式 高階函式 之前提到,函式在 Clojure 中是一等公民,像資料一樣,可以當成參數傳遞給其它函式,或可以被當成返回值傳遞。而可以做到其中...

2017-12-28 ‧ 由 林萌 分享
DAY 10

[第 10 天] 擁抱 Clojure:繫結與函式(四)

遞迴 一般遞迴 遞迴是函式透過不斷呼叫自己,將問題切割成數個細小問題逐個解決之後,把結果統整起來的問題解決方式。函數式程式設計語言透過遞迴達成迴圈可以做到的事。...

2017-12-29 ‧ 由 林萌 分享