routes.rb をもう一度考えてみた

@tyabe さんに声をかけていただいて、18日のShibuya.rbでREST関連の話をさせてもらいました。
Shibuya.rb には前回のDeNAでの開催のとき初参加で、今回が2回目だったのですが、会場のAJITOはとても雰囲気がよくていいですね。ビールやドリンクがフリーなのもポイント高い。

補足

しゃべったことを補足すると、流れとしてはこんな感じです。

routes.rb の悪いところはどこか

I. resources が直感的でない
基本の7つのアクション、なぜこの名前なのか根拠が薄い。全部動詞かと思ったらそうでもない。indexとかどうなの?
パターンとして与えられるのはいいんだけど、やはり最初は「とにかく覚えろ」ということになるのか。

II. Convention over Configuration じゃない
もし7アクションが「規約」で、覚えることを前提とするなら、 resources も規約として省略して、 routes.rb 自体書かなくてすむのでは?

routes.rb を書かずにすむとしたら、どうなるか

Sinatraに近い形ということになりそう。直感的にはわかりやすい。ただし問題点もある。

とりあえずの結論

パターンとしてのメリットもあるので、 resources の基本7アクションは規約として受け入れるが、そのかわりほとんどすべて resources で書ける(書く)ようにすべきでは。

余談

最初、具体的に何について話すか考えていて、URL設計については来週やるので、もうちょっとRails寄り、ということで前の記事でも取り上げた routes.rb の話にしてみましたが、だいぶ実用とはかけ離れた話だったかもしれません…。
しかも「もう一度考えてみた」なので、 routes.rb に文句つけてこう改良すれば?という話にするつもりが、どうも今よりいい案が思いつかず。企画ミスの感が否めませんが、どうだったでしょうか。

発表後の話し合い?の時間では、思いがけずREST関連の話で盛り上がってうれしかったです。こういうのがやりたかった!とくに @okitan さん(かつてREST厨だったらしい)、@masata_masata さん、@joker1007 さん。
ありがとうございました。

宣伝

23日に、 Sendagaya.rb の拡大版?として「RailsにおけるRESTfulなURL設計勉強会」を開催します。すでに満員だったりするのですが…。
もし好評であれば2回目3回目とやりたいと思っていますので、よろしくお願いします。

Sendagaya.rb Drinkup 全員LT大会の巻」こっちでもいいと思いますよー。