2010-09-02 103 views
40

我正在第一次檢查Clojure。我發現看看Clojure核心庫的(doc xxx)和(source xxx)很有用,但我更關心的是如何組織和整理一個完整的應用程序。好的Clojure代碼示例?

是否有任何優秀的開源示例?

例如,要學習如何在Java中良好編碼,我可能會看到Spring源代碼或類似的東西。

+0

這並不是很好,但對於有人在尋找如何構建REST api可能會很有趣:https://github.com/i-schuetz/clojushop – Ixx 2014-10-14 21:35:45

回答

47

著名的開源Clojure的項目:

  • Compojure - Web框架(既然你提到春季)
  • Ring - HTTP抽象API
  • Incanter - R類似的統計計算和圖形環境
  • Leiningen - Clojure的構建工具
  • Clojure-Contrib - 您提到了核心庫,但contrib絕對值得一看。
  • Enclojure - Clojure的IDE工具(使用Netbeans /雷德卡使用)
  • Counterclockwise - Eclipse插件,用於Clojure的
  • 4Clojure - 網站交互式填充式的空白Clojure的問題

幾個博客帖子解釋一口大小的Clojure應用:

2

我發現,對於大多數這些項目來看project.clj是獲得這些項目依賴的核心庫的好主意的第一步。大多數情況下,如果像Compojure這樣比較受歡迎和使用頻率較高的開源庫之一使用某些基本庫(例如Compojure中的Ring),那麼我可以專注於如何利用這些基本庫。這就是我如何瞭解Ring中間件如何工作的一個好主意,這幫助我理解了Noir的工作方式,並讓我也瞭解瞭如何用像Grizzly這樣的替代碼來替代Jetty,或者如何使用中間件來實現類似OAuth 2的東西。

3

http://corfield.org/blog/archives.cfm/category/clojure

這傢伙正在做一個博客裏面除其他事項外,對「現實世界Clojure的例子」的系列文章。 我認爲這是這類事情最好的地方之一,因爲這些文章不是簡單地提供源文件供您閱讀,他經常會遇到具體的實際問題,首先描述它們,選擇clojure的理由,以及在每篇文章中選擇具體做事方式的理由。 (然後一些代碼片段也是如此。)這給了這些例子本身更多的折衷觀點,並且不僅更好地理解了什麼和如何,而且爲什麼。(你可能想要在檔案中向下滾動一下,他有許多自己擅長的clojure文章,但這篇文章對於提到的「真實世界clojure」系列尤其如此,這些系列從像http://corfield.org/blog/post.cfm/real-world-clojure-email-status-tracking