すでに半年以上昔ではあるが、Perlの新しいオブジェクトシステムとしてMooseに注目が集まった。面倒なオブジェクト定義が手軽に、さらに型指定なども容易にできるのでオブジェクト指向プログラミングが簡単になる、というライブラリだ。

ピクチャ 28.png

デモアプリケーションのblok。MS Visio風なドローアプリケーション

 

コーディング量が減り、可読性が高まればバグの入り込む余地が減るので、システムの品質が高まる。工数も下がるし、メンテナンスもしやすいと言った具合に文句なしに良い。そんなMooseにインスパイアされたのがJooseだ。

今回紹介するオープンソース・ソフトウェアはJoose、JavaScript版Mooseだ。

JooseではMoose同様にオブジェクトを定義することができる。hasを使って属性を定義すれば、セッター/ゲッターは自動的に生成される。さらにメソッドの追加も簡単にできる。もちろん、属性はrwを使って読み取り/書き込みを制御することができる。

ピクチャ 30.png

コードはこのように書かれる

 

他にモジュールを定義したり、ロールを設定もできる。jQuery/Prototype.js/Dojo/MootoolsといったJavaScriptフレームワークと併用することも可能だ。さらにGoogle Gearsの中で活用したり、リレーションシップを定義することもできる。

サンプルとして、MS Visio風なドロー/ワイヤーフレーム作成を行うWebアプリケーションのblokや、クラスブラウザが提供されている。どちらもJooseの可能性を存分に感じさせてくれるものだ。Mooseを使ったプログラミングに慣れた人はもちろん、これから覚えようと思っている方はJavaScriptにはJooseを使って効率的な開発に取り組んでみてはいかがだろう。

 

**joose-js -Google Code

 **
http://code.google.com/p/joose-js/