What Exactly is RESTful Programming?


In this article, we will discuss about RESTful programming and its characteristics

Representational state transfer (REST) is a software architectural style that defines a set of constraints to be used for creating Web services. Web services that conform to the REST architectural style, called RESTful Web services, provide interoperability between computer systems on the Internet having HTTP as the underlying protocol.

RESTful Web services allow the requesting systems to access and manipulate textual representations of Web resources by using a uniform and predefined set of stateless operations.

By using a stateless protocol and standard operations, RESTful systems aim for fast performance, reliability, and the ability to grow by reusing components

Characteristics of Restful architecture

  • State and functionality are divided into distributed resources – This means that every resource should be accessible via the normal HTTP commands of GET, POST, PUT, or DELETE.
  • Client-server is the typical architecture where the server can be the web server hosting the application, and the client can be as simple as the web browser.
  • Stateless means that the state of the application is not maintained in REST. For example, if you delete a resource from a server using the DELETE command, you cannot expect that delete information to be passed to the next request

Restful Methods

  • POST – Method used to create a new resource.
  • GET – Method used to get all the information
  • PUT – Method used for updating an resource
  • DELETE – Method used for deleting an resource


RESTful architectural style helps in creating web service which is very simple.