デザイン自体を2つに分離してみてはどうだろう

http://d.hatena.ne.jp/nagaShima/20080918/p1 を読んで、自分なりの考えをまとめてみた。といっても自分は web アプリケーションの類ってほとんど作ったこと無いから、そのあたりは素人的考えの範疇を抜け出さないけど。

  • デザイン自体を2つに分離してみてはどうだろう

これが自分の考え。『UIデザイン』と『ロジカルデザイン』の2つに分けてみることはできないかな、っていう提案です。*1
プログラムに近い部分でのデザインがロジカルデザインで、MVC で言うならば M にあたる部分。無骨なクラス定義がいっぱいある感覚。
ユーザに近い部分でのデザインがUIデザインで、MVC で言う V、もっと極端に言えば HTML に対する CSS といった感覚。
結局、最低限のロジカルな部分とUIな部分を合成して、1つの完成品*2を生成するといったイメージが自分の中で浮かんだ。合成はもちろん MVC の C が自動で行うよ。M と V は完成品に対して機能を注入するわけだ。
確かにテンプレートはわかりやすい例だけど、そんなの使わずに自動でページ生成できるだけのコントローラが望まれるんじゃないかなーって思った。

  • ページ内のロジカルな定義
  • ページ内のUIな定義
  • ロジカルとUIを合成して完成品にする司令塔

JSP のようなテンプレートはまだ十分にロジカルさが残っていると思う。あれはテンプレートじゃなくてロジック部分に書くべき内容だなぁと思ったり。

*1:というか、たぶんこのあたりは Ruby on Rails で実践できてるんじゃないかな。RoR よくわかんないけど

*2:例えば HTML など