リファクタリング

適度に抽象化したりしつつ、少しずつ手を入れたり書き足したり。まあ、一番最初にやるのはそれぞれのテストケースを書くことですが。最初にテストを書いて、次にその部分をリファクタリング。正しいテストを書けば、正しいコードは自然と湧き上がってくる。最初に書いたとき、ほとんどprintデバッグだけで書いてたからなぁ。Ameba Visionのdecryptはテストを書いたけど、例外はそれくらいしかなかったと思う。やっぱりTDDの習慣を身に着けないとね。

Spiffy

via. http://kerolin.jspeed.jp/Computer/Linux/spiffy070301.html
ちょっと試しに使ってみたけど、これは面白そう。んー、けどAbstractClass -Baseでソースフィルタをかけて暗黙の$self = shift;と最後の1;は、確かにコード量は減るけどちょっときもちわるい。普通にAbstractClass -baseで明示的に書いたほうが好きかな。defined-orをPerl 5.8でも使いたいからソースフィルタを書いたことがあるし、便利なんだけど、これは好きなソースフィルタの使い方じゃない。
http://search.cpan.org/~ingy/Spiffy/lib/Spiffy.pm