Rails

http://www.rubyonrails.org/show/HomePage
rubyのWebアプリケーションフレームワーク。DB連携がスムーズに出来るのが特徴か。上記サイトに、いくつかQuickTimeのデモがある。「10 minute setup video」を見てみた。

あのデモはすげーわ。
見てて思ったすごさを思いつくまま列挙。あとで書きなおします。

良い点

  • DBからインターフェイスまでが一連の操作で簡単に生成できてた。
    • 多分、裏側ではDBとオブジェクトのマッチングをやっている
    • さらにそれらのオブジェクトを操作するWeb上のUIが非常に上手くつくりこまれている
      • DBにDate型のフィールドを追加するだけでブラウザ上に日付入力のセレクトボックスが現われたのは鳥肌もん。
  • しかもビューがerbなので柔軟に変更できそう。
  • コードテンプレートを生成するコマンドが付属していた。あれは楽そう。

心配な点

  • デモでは常にDBのフィールドを参照しながらやってた。コード上にフィールドが反映されてるようには見えなかったので、DBを簡単に操作できない環境ではつらいかもしれない。
  • よくも悪くもかっちりしたフレームワークなので、その枠から飛びだしたことがやりたくならないかどうか。
    • そもそもDBがない環境はどうか?対応DBの幅はどうか?
    • DB以外のデータもあそこまで連携できるか?DBの型情報に依存すればUIをかっちり作りこめるが、たとえば普通のオブジェクトをあのように操作できるか?
  • Viewがerbなので複雑なものになるとスパゲッティERBにならないか?
    • デモの範囲では、erbの柔軟性は必要ないように見えた
    • 例えば、amritaにCGIKitのダイナミックエレメントを埋めこむ、くらいで実現できるのでは?
  • 複数データソースを一画面でいじることはできるか?
    • デモでは1オブジェクト(1テーブル)の情報を1画面で操作していた。でも常に一画面の情報を同じ一つ、かつ、ひとつきりのオブジェクトにしか反映できないとなると不便では?
    • 単に管理用とか、掲示板の1エントリとか定型なものだけならええんだけどね。
  • できれば、ローカルでファイル編集していたところも、Web上の管理画面上でやりたい。無理?

あれ、けっこう凄いとおもったのに、心配な面のほうが多くなっちゃったな。