「ベストプラクティス」の例として使用できる中規模のClojureサンプルアプリケーションはありますか。また、そのようなアプリケーションがコードおよびコード編成の観点からどのように見えるかを確認する良い方法はありますか? Webアプリケーションは私にとって特に興味深いものですが、最も重要なのは、プログラムが一般的に役立つこと(ブログ、バグ追跡、CMSなど)を行うことであり、実際に実装する必要がなかった数学的なことではありませんworld(N-queens問題の解決、Lifeのシミュレーション、フィボナッチ数列の生成、およびそのような通常の関数プログラミング言語)。
ありがとう!
cow-blog by Brian Carperをお勧めします。著者によると、それはあなたの目的を念頭に置いて書かれています。
clojure-contrib ソースコードを参照すると、clojureでのライブラリの実装方法を確認できます。
同じソースツリーで「 ClojureScript 」をチェックアウトすることもできます。
Clojureの非常に小さなサブセットで記述されたコードを自動的にJavaScriptに変換できます。
ClojureScriptトランスレーターは完全なClojureアプリです。
また、Stewart Hallowayの ClojureへのPractical Common LISPサンプルのポート をチェックアウトすることをお勧めします。
Compojure を見てください。 Clojureで記述されたWebフレームワークであるため、Clojureで有用なWebアプリを(埋め込みJetty上で)作成および実行できます。また、実際のClojureコードのかなりの部分の良い例としても機能します。
活発に開発されており、役立つ Google Group があります。
Clojureの著者であるRich Hickeyによって書かれたantデモをご覧ください。
http://clojure.googlegroups.com/web/ants.clj
Emacs開発環境と一緒にセットアップするための素敵な指示を以下に示します。
また、このコードに沿ったRichのプレゼンテーションもご覧ください。
Clojure自体は、Clojureのベストプラクティスの良い例です。 Core.cljの下部にある良いものを読んでください。
4Clojureは オープンソース のウェブサイトで、インタラクティブな穴埋めのClojure問題を解決できます。
Compojureは、おそらく例を挙げるのに最適な方法だと思います。 「中規模」の例ではないかと思いますが、小さなサブセクションがおそらく機能するでしょう。少なくとも、それが私のアプローチになるでしょう。 スマイル
また、チェックアウト
http://github.com/technomancy/mire/tree/master
これは小さなm.u.dです。 clojureで構築されたクライアントプロトタイプ。利点は、完全に自己完結型であり、関連する概念も含めて非常にシンプルであることです。ドキュメント、ええ、それは大丈夫ですが、コードの概念はM.U.Dのアクション要素と非常に密接に結びついています簡単に実行できます。
この質問から2年が経ちました。それはまだ言語のサイクルの初期段階ですが、Clojureは間違いなく本格的な制作作業に使用されています。 World Singlesには、Webプラットフォームであらゆる種類の汎用タスクを処理するClojureの数千行があります。これについては Real World Clojureシリーズ でブログに書いています。
かなり大規模なオープンソースプロジェクト(正確にはアプリケーションではなく、知名度の高いインフラストラクチャ)の場合は、 Twitterのストーム および BackTypeのカスカログ (現在はTwitterの一部)を確認できます。 4clojure.comはオープンソースWebアプリケーションとして言及されていますが、これも一見の価値がありますが、 4clojureの新しいgithubリポジトリ に注意してください。
肯定的な兆候: InfoQの記事 「大規模な運用展開で使用されているClojureの最初の公開レポートの1つ」についてです。開いているようには見えませんが、少なくとも実際の本番環境のミッションクリティカルなアプリケーションでClojureが使用されている兆候です。 Clojureコミュニティの大きな一歩。
こちらをご覧ください: http://bitbucket.org/kumarshantanu/blogjure/overview/
Hibernate、Compojure、StringTemplateを使用して実際に機能する小さなブログアプリケーションです。
http://code.google.com/p/lighttexteditor/
あなたは軽いテキストエディタを試すことができます
Edge は、Clojure、ClojureScript、Component、Yada、Aero、およびBootを使用してアプリケーションを構造化する中規模のアプリケーションです。
Pedestal 、非常に有望なWebフレームワーク、サーバー側とクライアント側(ClojureScriptを促進する)の両方をチェックアウトすることをお勧めします。 GUIの内容を理解するのは少し難しいですが、大きなアプリで正気を保つためにすべきことはかなりあります。
Clojureはまだ若すぎて、利用可能なソースコードを備えた中規模のアプリケーションを持つには動いているターゲットです。