地豆のプロジェクトいろいろ zeus編

今回は所属しているJiemamyProjectのお話。Jiemamyのプロジェクトは色々あります。
簡単にそれを紹介していこうと思います。
僕が特定のプロジェクト以外のことをあまりわかっていないので、まとめながら理解
して行くつもり。と同時にチケットを消化するための作業だったりもするw



Jiemamyの開発おすすめ設定ではいくつかのプロジェクトをまとめてワーキングセッ
トを構築して作業するという設定になっています。各ワーキングセットはそれぞれ
の機能別に設定されています。その単位ごとにご紹介して行きます。

zeus

まずは基本となる仕様コンポーネント群。
以下の4つのプロジェクトで構成されています。

jiemamy-zeus

他のプロジェクトの依存ライブラリを解消するためのpom.xmlmaven実行用のシェル
が含まれています。現在はq4eのおかげでチェックアウト直後に依存ライブラリの解決
が行われるので直接シェルを実行することはあまりありません。

jiemamy-spec-core

これがJiemamyの心臓部。各種モデルはもちろんのこと、jer出力モジュールやフォー
マッタやヴァリデータなども含まれます。JiemamyAPIを使う場合はここの部分にアク
セスする形で利用します。

jiemamy-spec-diff

現在はほぼ空の状態です。*1

jiemamy-spec-view

各種モデルやリレーションをビジュアル的に表現する際に利用されるプロジェクトです。
各モデルの色や表示座標、リレーションの表現についての設定などを行うプロジェクト
です。主にModelEditorPluginで使われるプロジェクトです。

このワークセットでの依存ライブラリ
  • hamcrest
    • テスト用のライブラリ
  • junit
    • おなじみのテスト用のライブラリ
  • commons-lang

まとめ

地豆の心臓部であるzeus。ここに地豆のおいしいところがぎゅっとつまっている
わけです。Jiemamyの思想やJiemamyAPIについての理解を行う際は一番初めに読む
べきワーキングセットになります。
規模としてはテストコードをのぞいてjiemamy-spec-coreが8884Step*2
ソース自体にもコメントが多く書かれているので理解の手助けになると思います。

今回ご紹介したソースは以下のレポジトリビュアーでご覧頂けます。
http://sourceforge.jp/projects/jiemamy/svn/view/zeus/trunk/?root=jiemamy

*1:railsでいうところのmigrationファイル的な動きを実装したいという話をしていたのでこれがそのプロジェクトなのかな?

*2:空行/コメント業含めて