2月になりましたねぇ
Usagi Projectとのコラボを発表してから早2ヶ月がたちました。まだ表立った成果がみせれてませんが、開発SNSの方ではちゃくちゃくと議論が進んでいます。
2月の末にあるオープンソースカンファレンス 2008 Tokyo/Spring できちんとコラボの成果を発表できるようにしたいなと。12月と1月はいろいろとベースとなる議論をしてたり、私自身の引越しとかでなかなか手を動かすところまでは言ってなかったのですが、ようやく先週くらいから手を動かし始めてます。
http://www.ospn.jp/osc2008-spring/
2月になったら徐々になにをやっているかということをオープンにしていくという話をしていましたが、今やろうとしているものは以下のような内容です。(具体的なものがまだそろってませんので、構想だけになりますが)
- DIContainerで疎結合というMaple3でやっていたことをさらに進化させる
- ROAに従ったフレームワーク
- TDDがより楽にできる仕組みの提供
- 追記(09:48)
- 以前もここで書きましたが、Maple4はMaple3の進化系や「Better Maple3」ではありません。まったく新たな考えでつくっています(DIContainerをベースにしようというところは一緒ですが)。ROAに従うというのは、このブログでもREST本をみているというのを書きましたので、そうなのかなと思っていた方もいたかもしれませんね。
今開発SNSではROAにしたがってつくるというのはどういうことなのか?ということをUsagi ProjectのSNSツールであるMyNETSのある機能を想定して、熱い議論が行われています。こういう熱い議論が表にだせないというのは歯がゆいところではありますね・・・
私はその熱い議論を横目でうらやましーくみながらベースとなるツールをこつこつ作ってます。で、今形になろうとしているのが、DocTestというプロダクトです。
rhacoが既に持っている仕組みですが、ちょっとアレンジしたものになっています。今目の前でつくろうとしているクラスのテストを書くときに、別のテストケースを書くためのファイルをつくるってめんどくさくない?というのが趣旨で、一緒のファイルにはいってるからこそ、先にテストケースの修正をしてから、機能の作りこみ・修正をしたくなるという流れをつくりたいなと。しかもそれが、phpdocで吐き出したときにAPIリファレンス上で表示されれば、APIリファレンス見たら使い方もわかるし、それは単なるコメントではなくて、実際にうごくものなんだよということができるので、一石N鳥なものになるのではないかと思ってます。
今、プロトタイプ版がようやくできつつあるので、これをコミッターに精査してもらって、Maple4の全てのプロダクトがこのDocTestによってTDDされるということにしたいと思います。
さて、OSCではどこまで動いているものをみせれるか。がんばらねば。