StateMachine: a Builder-Builder for Groovy, part 1 - DZone Java

「AntBuilderやSwingBuilderは構造検査までやってくれないんで,こんなStateMachine作ってみたよ」みたいな話かな。
構造定義そのものがDSL的に出来るってのが面白い。
#似た感じのやつでJParsecってのがあったな。


情報処理技術者の端くれとしては,いっぺんくらいパーザ書いてみたいので,使えそうなネタはストックしておくよー。:-)

O'Reilly Media - Technology and Business Training

Enum#valueOf()をうまく使って,switch文で文字列定数の評価を行ってみるやり方。
ポイントは,以下の3点。

  • 文字列定数⇔列挙型の変換ルールを決める(可逆なのが望ましい)
  • valueOf()でコケる用にUNKNOWNみたいな列挙をひとつ用意しておく。
  • 利用者からは,valueOf()を呼ばずに getValue() みたいな代替メソッドを呼んでもらう。

それはそうと列挙型(enum)ねぇ。もう世の中はJava5化が定着し,列挙型とか総称型(generics)とか使い放題なんだろうか...。

Wicket Plugin

GrailsWicketを統合するプラグインWicketのWebPageをGroovyで書き,WicketからGORMを利用したりと,なかなか挑戦的なプラグインなのだが,内部クラスや無名クラスが作れないGroovyとWicketって相性悪くないか?


HelloWorldだけじゃツマらんので,GuestBookも動かないか試してみたが,案の定ListViewで挫折した。orz
GORMのドメインオブジェクトはWicketからも扱えたんだけど,わざわざSerializableを宣言しないとダメってのがイマイチ。:-(
#あとGroovy的に見ると,PropertyModelとか要らんよなぁとか思う。


その他にも,Grails1.0で動かなかったり(Grails0.55では動いた),なんか途中で飽きちゃった感が漂っとるし。


個人的にはGrails(Railsモナ)のコントローラ駆動な考え方より,WicketやClickみたいなページ駆動のほうが好みなので,ちょっと期待してたんだけどなー。
まあ,Grailsに手を出して,いきなり亜流の使い方するほうが間違ってるか。:-P