Ruby on Rails初心者です。
RESTfulという言葉をよく耳にするので自己理解も兼ねてまとめたいと思います。
RESTfulとは
RESTの規約に従った、Webサービスのこと。
このRESTは以下のような特徴を持っています。
◉アドレス可能性
リソースをURIとして一意に指し示すことができる
◉ステートレス性
一つ一つのリクエストに処理に必要な情報を全て含める性質(自己完結型)
◉統一インターフェース
URIで指し示したリソースに対する操作を、GETやPOSTといった8つメソッドに絞り込み、限定的なインターフェースを行う
◉接続性
リソースをリンクで接続し、一つの情報に他のリンクの情報なども含めることができること
RESTfulにすることのメリット
○ URIの部分などで、美しくわかりやすいインターフェースを表現できる
○ 他の開発者が設計を理解しやすくなる
○ いちいちURLやHTTPメソッドを考えないで済む
○ サーバがクライアントの情報を共有しないことにより、スケーラビリティが向上する。
(サーバがクライアントの情報を記憶するようにしてしまうと(ステートフル)、クライアントが増えていった際にサーバを増加させる必要がありますが、その際にクライアントの情報をサーバ間で同期する必要があり、オーバヘッドが発生してしまいます。)
まとめ
RESTfulな設計をしていくことで、わかりやすいWebアプリケーションをつくることができるようになる(と感じました)