This chapter is primarily intended to introduce readers to various RESTful design concepts involving design strategies and best practices; we expect that readers already have a basic understanding of software design concepts, client-server architecture, and basic data exchange formats, such as JSON and XML.
We assume readers have a basic understanding of web architecture, HTTP methods, headers, and related client-server concepts. However, we strongly encourage our readers to refresh their knowledge of design principles such as SOLID, OO designs, enterprise integration, SOA, and microservice architecture fundamentals.