Help us understand the problem. What is going on with this article?

Clojure での開発に役立つライブラリ一覧

More than 5 years have passed since last update.

プログラミング Clojure の第2版が出版されました。
amazon で一時的に在庫切れになってたりと思っていたより人気がある(でてきた?) Clojure。

そんな Clojure をこれから使い始める人のため、自分が使っているライブラリをリストアップしておきます。


Web アプリケーション/フレームワーク

Ring

WSGI(Python)、Rack(Ruby) の Clojure 版。


Compojure

Ring をベースにした軽量 Web フレームワーク。
Sinatra(Ruby) の Clojure 版。
Ring と作者が同じ。


lib-noir

Ring ベースのアプリケーションで使えるユーティリティライブラリ。
Noir っていう Compojure を内部的に利用していたフレームワーク(開発終了)から便利な機能(セッション、バリデーション等)を切り出したライブラリ。
Compojure と一緒に使うことができます。


テンプレートエンジン

Hiccup

シンプルなテンプレートエンジンで Clojure のテンプレートエンジンとしては一番有名。
Ring, Compojure と同じ人が作っている。


Enlive

hiccup を使っているためほとんど使ったことないですが hiccup と共に Clojure のテンプレートエンジンとしてよく名前を見かけるのでリストアップしておきます。


HTTP ライブラリ

clj-http

HTTPリクエストを送るライブラリ。


データベース/SQL

Korma

DB アクセスに使えるライブラリ。
SQL を柔軟に組み立て発行することができ、とても使いやすい。
使う際には、利用する DB (mysql, postgres, sqlite3, oracle など) に合わせた JDBC ドライバも必要になる。


テストフレームワーク

Midje

repl で自動テストを走らせることができる。
自動テストを走らせている間も、repl としての機能をそのまま利用することができる。
メタタグにより、実行するテストを切り分けたりネストしてテストを書いたりでき、RSpec(Ruby)に似ている。


環境設定

Environ

環境設定を統一的に扱うライブラリ。
現状は、環境変数、Java のシステムプロパティ、Leininge の Profiles を扱える。
Ring, Compojure, Hiccup と同じ人が作っている。


日付/時間

clj-time

Java の Joda Time をラップした日付/時間処理を便利にするライブラリ。


JSON

Cheshire

JSON をエンコード、デコードを行うライブラリ。
高速で Custom Encoders という機能を持っている。


CSV

Clojure-CSV

CSV ファイルを読み書きするライブラリ。


ロガー

Timbre

設定がシンプルなロガー。
プロファイリングに必要なライブラリを含んでいる。


ひとまず、こんなところでしょうか。
使ってみて便利だと思ったライブラリがでてきた際には、追記していきたいと思います。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした