• Post Reply Bookmark Topic Watch Topic
  • New Topic

What is REST?

 
Bill Dornbush
Greenhorn
Posts: 10
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
When I received the book promo email, I tried googling REST. My quick reading of the citations was not very helpful. I got that it is "an architectural style of networked systems." One said "The Web is a REST system!"

So I put it to you, the experts: What is REST? Why should I care about it? What will I learn in your book that will somehow make me better or more capable at providing web based information, which is what I do.
 
Jason Porter
Author
Ranch Hand
Posts: 126
5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Short and sweet, REST is a resource way of looking at the web. Everything is a resource. You typically see REST in reference to CRUD, as they work very well together. You can check out http://java.sun.com/jsp_utils/PrintPage.jsp?url=http%3A%2F%2Fjava.sun.com%2Fdeveloper%2FtechnicalArticles%2FWebServices%2Frestful%2F or even look for DHH's (if you don't mind listing about Ruby on Rails) 2006 Rails Conf keynote (http://www.scribemedia.org/2006/07/09/dhh/).

You may hear about the clean URLs you get from REST, but it is much more than clean URLs.
 
Leonard Richardson
author
Ranch Hand
Posts: 37
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Bill,

When most people talk about REST, they use it as a shorthand for a
philosophy of distributed programming. Under this philosophy, the way
to expose an application over a network is to split it into an
enormous number of simple objects, give each object an address, link
them together, and expose them through HTTP.

Probably the most interesting thing about this way of doing things is
its similarity to the World Wide Web. It's not exactly the same as the
web we humans use, but that page you saw was basically right: a big
part of the web's success comes from its RESTful properties.

The book shows how to design distributed systems that work like the
web, and explains the advantages over other philosophies of
distributed programming. It shows how to provide web-based information
when there's not a human being on the other end of the connection.
 
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!