Introducing REST
So, what is REST? The acronym stands for REpresentational State Transfer, and defines client-server interaction in terms of state transitions. Each request from the client is a transition to a new state. The response sent by the server represents the application state after the transition.
Does it sound too complicated? From a theory point of view you may find it unconventional, especially if you are used to a client/server with a stateful interaction. REST is stateless, and once you get the general idea you will discover that it is very simple.
Note
Although REST is commonly thought of as a web interface, actually it is much more. The term REST was defined by Roy T. Fielding—one of the most important people behind HTTP protocol design—in his PhD thesis. REST describes the interaction between clients and servers, and does it by abstracting from any protocol. It describes a set of operations that a server has to implement and that a client can use. Of course in implementations...