好的Clojure代码示例?

我正在第一次检查Clojure。 我发现看看Clojure核心库的(doc xxx)和(source xxx)是有用的,但是我更关心的是如何组织和整理一个完整的应用程序。

有没有什么优秀的,开源的例子呢?

例如,要学习如何在Java中良好的编码,我可能会看到Spring的源代码或类似的东西。

优秀的开源Clojure项目:

  • Compojure – 一个web框架(自从你提到Spring之后)
  • 环 – HTTP抽象API
  • Incanter – 类似于R的统计计算和graphics环境
  • Leiningen – 一个Clojure的构build工具
  • Clojure-Contrib – 你提到了核心库,但是contrib也是值得关注的。
  • Enclojure – Clojure IDE工具(与Netbeans / Redcar一起使用)
  • 逆时针 – Clojure的Eclipse插件
  • 4Clojure – 交互式填充空白Clojure问题的网站

一些博客文章解释一口大小的Clojure应用程序:

  • 乒乓在Clojure
  • 在Clojure的Buddhabrot

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

这个人正在做一个博客,除其他外,有一个关于“现实世界clojure例子”的文章系列。 我认为这是这类事情最好的地方之一,因为这些文章不是简单地提供源文件给你阅读,他经常会遇到具体的实际问题,首先描述它们,selectclojure的理由和理由在每篇文章中select具体的做事方式。 (还有一些代码片段也是这样。)这样就给了这些例子更多的折衷观点,更好的理解不仅是什么,如何,而且为什么。

(你可能想在档案中向下滚动一下,他有许多自己擅长的clojure文章,但是这个post对于提到的“真实世界clojure”系列是特别真实的,它们从http:// corfield.org/blog/post.cfm/real-world-clojure-email-status-tracking )

我发现在大多数项目中查看project.clj是获得这些项目依赖的核心库的好的第一步。 大多数情况下,如果Compojure等比较受欢迎的,使用频率较高的开源库之一使用某些基本库(例如Compojure中的Ring),则可以关注如何利用这些基本库。 这就是我对Ring中间件是如何工作的一个好主意,这帮助我理解了Noir的工作原理,并让我也明白了如何用像Grizzly这样的替代品来替代Jetty,或者如何使用中间件来实现类似OAuth 2的东西。