RESTful Service Design Training
RESTful Web Services – Principles and Best Practices Seminar
This seminar provides architects, analysts, developers and other technical staff with a comprehensive overview of core RESTful architecture principles, design approaches and best practices. Training begins with a detailed look at the REST architectural style, examining why the web works and how it scales. These foundations are then expanded to present the RESTful service concept and its goals.
Important concepts including resource oriented architectures, resource based modeling, the Richardson Maturity Model and decoupling clients and servers through HATEOAS (Hypermedia as the Engine of Application State) are covered in depth. Attendees will leave the seminar with a clear picture of the strengths and weaknesses of RESTful services, an overview of best practice patterns and antipatterns as well as familiarity with the design areas in which debate still ensues in the community.
RESTful Web Services
This course provides a detailed look at RESTful service design and best practices in a language-agnostic setting. Attendees will gain a deep appreciation for the ability of properly designed RESTful services to leverage the infrastructure of the Web. Each of the six REST constraints will be examined in detail along with the HTTP features which empower these constraints over the Internet. Important design concepts including resource based modeling, the Richardson Maturity Model and decoupling clients and servers through HATEOAS (Hypermedia as the Engine of Application State) are covered in depth.
RPC and resource based client server interaction styles are contrasted in the context of a range of related technologies, including REST, SOAP, Protocol Buffers, and Apache Thrift. Interface examples from Twitter, Amazon and several others will be used to illustrate design practices and pitfalls. Upon course completion attendees should have a solid understanding of the guiding principles of REST and how to apply these principles to practical interface design.
This is an instructor-led training (ILT) class and is available for onsite and online delivery.