雑感

 Webアプリケーションの開発はショッピングカートCGIを書いた事があるとかその程度の経験でしかない人間が、最新のWebアプリケーションフレームワークである所のRuby on Railsを使って開発をしてみた感想。
 いろんなところではまる。(railsの責任ではないところもある。MySQLとか。)discoverのバグとか。最初の印象は悪い。これだけ流行してなかったら、たぶん途中で放り投げていたと思う。
  Model/View/Controllerが分離されているのは嬉しい。Viewに関しては、昔は自分で独自のテンプレート(できるのはマーク部分の変数置換だけ)処理コードを使っていて、条件分岐部分のHTMLはPerl側で生成していたので、条件分岐がテンプレート側に埋め込めるというのは良い。昔バイトしてた頃にもテンプレートライブラリぐらいはあったはずなんだけど。馬鹿だったので使ってませんでした。
 次にコントローラ。クエリによって処理を自動で振り分けてくれるというのは良い。昔自分で書いていた頃にはここら辺をどうすれば良いのかよくわかってなくて、適当(適切な、という意味ではなく、いい加減な、という方の意味)な処理単位でCGIを分割していたので、そこら辺を「こうやると綺麗に書けるよね?」と提案してくれているのは嬉しい。
 モデルに関しては、これまでO/Rマッパーは使ったことがなかったけど、これもなかなか良い。これなしではもうやっていけないだろう。手書きでSQLとか、あまり書きたくない。
 全体として、printとか使いまくりの昔のCGI開発と比べると、「アプリケーションを開発している」という感じがする。昔やってたのはなんて言うか、動的ページ生成?
 あと、プラグインが充実しているので、自分で書くコード量はすごく短くなる。今回書いたコード量は(Viewを除けば)びっくりするぐらい少ない。だから開発時間が短くなるかというと、どこに自分の欲しい機能を実現する方法があるのかを調べるために時間を食ってしまうので、あまり短くはならなかったけど。まぁ、一ヶ月も使えばよく使う機能はだいたい覚えてしまって、劇的に開発速度をあげられそうな気はする。しばらくWebアプリを開発する予定はないけど。