Presentation: "Designing RESTful Rails Applications"
Time: Friday 14:30 - 15:30
Location: Franciscan II
The REST support in Rails consists of helper methods and enhancements to the routing system, designed to impose a particular style and order and logic on your controllers and, consequently, on the way the world sees your application.
The benefits of leveraging Rails' REST support fall into two categories: * convenience and automatic best practices for you * a REST interface to your applications's services, for everyone else.
You can reap the first benefit even if you're not concerned with the second. In fact, that's going to be our focus: what the REST support in Rails can do for you in the realm of making your code nicer and your life as a Rails developer easier.
Moreover, the relationship between Rails and REST, while a fruitful one, is not free of difficulties. Much Rails practice is non-compliant with the precepts of REST from the beginning. REST involves stateless communication; every request has to contain everything necessary for the recipient to generate the correct response. But pretty much every non-trivial Rails program in the world uses server state to track sessions. To the extent that they do, they are not adhering to the REST design.
Untangling all the issues and dilemmas is beyond the scope of this talk. Our focus will be on showing you how Rails REST support works, and opening the door to further study and practice -- including the study of Fielding's dissertation and the theoretical tenets of REST.