Mastering REST Architecture — Introduction
If you are building apps or websites today, most probably you’ve heard REST many times, but you might not be sure what this thing is, whether you should use it or how to get started. If this sounds familiar, then this short article series “Mastering REST Architecture” is for you! Let’s start with learning REST, REST API and RESTful Web Services terms first then we’ll develop “hello world” apps, are based best practices, to get the main philosophy and main practical usages of REST Architecture that we’ve already built its theoretical background via “Mastering REST Architecture” short tutorial series!
Representative State Transfer (REST)
REST is intended to evoke an image of how a well-designed Web application behaves: a network of web pages (a virtual state-machine), where the user progresses through an application by selecting links (state transitions), resulting in the next page (representing the next state of the application) being transferred to the user and rendered for their use - Roy Fielding in his Ph.D. dissertation in the year 2000
REST is a style of software architecture. As described in a dissertation by Roy Fielding, REST is an “architectural style” that basically exploits the existing technology and protocols of the Web.
REST API
An application programming interface (API) is a particular set of rules(‘code’) and specifications that software programs can follow to communicate with each other. It serves as an interface between different software programs and facilitates their interaction, similar to the way the user interface facilitates interaction between humans and computers.
You can watch this video that explains API very well to understand API basics.
A REST API defines a set of functions which developers can perform requests and receive responses via HTTP protocol such as GET and POST.
RESTful Web Services
RESTful is typically used to refer to web services implementing REST architecture.
Conclusion
- REST is a style of software architecture
- REST API defines a set of functions which developers can perform requests and receive responses via HTTP protocol such as GET and POST
- RESTful are web services implementing REST architecture
Next post will be about REST Architecture details, its advantages and its constraints.