Rails びいきの Catalyst ファースト・インプレッション

あかん、どうしても Rails と比べてしまう。Perler から突っ込み歓迎。諭してください。

  • 開発スピードがめっちゃ速い。
    • つい最近 5.51 入れたと思ったら、あっという間に 5.56 まで上がった。
    • 非互換あるし。lib/appname/C/ -> lib/appname/Controller/ とか。
    • 人柱感あり。でもやるぜ! 12月中旬運用開始!
      • まだ作ってないですけどー。CDBI 初めてですけどー。TT も初めてですけどー。
  • script/ 以下
    • なんでスクリプトに appname が全部ついているんだろう? だるー。いらんだろ。
    • script/appname_create.pl を使用して lib/appname/Model/CDBI.pm 作成するときに dsn の引数指定するの○。
      • Rails で config/database.yml を書いてない/間違っているのに script/generate scaffold やっちゃって嵌る(_form.rhtml が作られてない)、なんてことがない、はず。
  • root/ 以下にテンプレートを置く件
    • テンプレートをココ以下においてコントローラーでファイル名指定しないといけない。 マンドクサ。
    • ディレクトリ・ファイル決め撃ちの方が他人アプリ覗いた時わかりやすくて良いのでは? root/template/pagename.(tt|html|...) とか。
    • まぁ色んなテンプレート選べるのと引き換えかな。TT でいいじゃんと思うけど。
    • root/template/ 以下に置くのが暗黙の了解っぽい。
  • URI とファイルパス・関数名が連動してない。
    • Regex で自由自在。
    • 基本は Local 縛りで、どうしてもと言う場合は Rails の config/routes.rb ように纏められる方が良いと思う。
    • 中身見ないとわからないっつーのは引継ぎや教育のコストを上げるなぁ。チーム内規約でいくしか。
    • 結局、オレオレ・フレームワークになるのか?

総合すると「折角 Ruby と同じように柔らかい言語なんだから(そうでもないのか?)「convention over configuration」も入れればよかったのに」という印象。でもオモロイから採用。