BitArts Blog

ロードバイク通勤のRubyプログラマで伊豆ダイバー。の個人的なブログ。

Tapestryの.pageファイルは邪魔者?

Tapestryで思うこと (うたた寝プログラマの日記)

TapestryではHTMLファイルほうでJWCコンポーネントを指定しちゃえば.pageファイルをスカスカにすることはできるんだけど、.pageファイルを無くしたいってことであれば、HTMLファイル側じゃなくて、PageクラスのほうでJWCを指定できるようになっているべきだと思う。HTMLファイルはあくまでデザイン(「ビュー」というより、あくまで「デザイン」だと思う)を定義する極力シンプルなものであるべき。

.pageファイルは、PageクラスがJWCに依存しないようにするために存在するというよりも、HTMLファイルがJWCに依存しないようにするために付け加えました。っていう経緯っぽい感じ。Tapestryそんなに分かってるわけじゃないので寝ぼけたこと言ってるかもですが。

この構成はそれなりに美しいと思うけど、.pageファイルの書式がわけわかんねーのも確か。複雑な設定ファイルは時間が経つと忘れて自分でも理解不能になっちゃう。そもそもXMLは機械向けのフォーマットであって、人間が書くにはちょっと分かりにくいつーか見にくい。なんでもXMLってのもどうよと思う。どうせこれを書くのはJavaプログラマなんだから、Javaコードで書けばいいじゃんという考えも理解できる。ただ、ロジックを含まないというか含むべきではない層については、ぱっと見で分かるシンプルな設定ファイルであるべきではないかという思いも捨てきれない。つまり.propetiesファイル程度のものね。

ロジックを含まない、定義・設定レベルの情報、しかし書くのはプログラマってのを、Javaコードで書くべきなのか、設定ファイルのほうがいいのか。結構悩ましい。これはStrutsstruts-config.xmlなんかも同じことが言えると思うけど。