Over a million developers have joined DZone.

My New Book "RESTful Java Patterns and Best Practices"

· Java Zone

Discover how powerful static code analysis and ergonomic design make development not only productive but also an enjoyable experience, brought to you in partnership with JetBrains


RESTful Java Patterns and Best Practices
 is the second book which I have worked on and is recently published.

Overview

The convergence of social networking, cloud computing, and era of mobile applications creates a generation
of emerging technologies that allow different networked devices to communicate with each other over the Internet.
As the technology landscape evolves, today’s applications are built on the notion of producing and consuming APIs
This API based architecture enables agile development, easier adoption and prevalence, scale and integration with
applications within and outside the enterprise.

The advent of mobile applications calls for a stricter delineated client-server model. Companies building applications on IOS
and Android platform can consume the REST based API and extend and deepen their reach by combining data from multiple
platforms because of the API centric REST based architecture.

The widespread adoption of REST and JSON opens up the possibilities of applications incorporating and leveraging
functionality from other applications as needed. Popularity of REST is mainly because it enables building lightweight
simple, cost-effective modular interfaces, which can be consumed by a variety of clients.

One of the most important considerations for the apps is dealing with security. The developers building apps should not be
concerned with the user's credentials. .The clients can be acting on behalf of other users and must be authorized to perform
actions for them without the user having to share his credentials for username and password.This is where the OAuth 2.0
specification comes into picture.

Another important aspect to consider when building distributed applications is traceability, which will involve logging the
data related to requests for debugging purposes in an environment encompassing multiple micro services, which can be
geographically distributed and deal with thousands of requests.

Similarly caching, rate-limiting, validation and exception handling as well as asynchronous processing are essential
elements to be considered when building RESTful services. Micro services based architecture comprises of breaking
a monolithic application into fine grained services which can provide benefits of simplicity, separation of concerns,
isolation of problems, independent scale up and scale down thus providing the foundation for a resilient architecture.

RESTful Java Patterns and Best Practices aims to cover all these topics in detail with code samples using JAX-RS
along with best practices and case studies from the ubiquitous platforms like Facebook, GitHub, Twitter, PayPal etc.

What this book will cover

  • How to build RESTful web services using JAX-RS 2.0 API
  • Gain insights into techniques related to versioningerror handlingresponse codes in REST
  • Clarify advanced topics related to SAML and OAUTH 2.0, similarities between SAML and 3-legged OAuth
    as well as best practices for OAuth
  • Discuss caching techniquesvalidationrate-limitingasynchronous operations and other best practices
    to improve application responsiveness
  • Review best practices for loggingpaginationdocumentationtesting of RESTful services.
  • Show how highly available cloud applications tend to move to a networked component model where
    applications are decomposed into micro services, which can be deployed and scaled independently
  • Cover the future of REST and evolving standards along with case studies on how different enterprises use them
  • Compare and contrast other technologies like WebHooksWebSockets and Server-Sent Events for delivering real time data to clients
  • Compare REST API from TwitterGitHubFacebook and others

Who this book is for

RESTful Java Patterns and best practices, is a practical, hands-on guide that provides you with clear and pragmatic
information to take advantage of the real power of RESTful services and gives you a good foundation for using them
in your applications. The book is aimed at novice developers who want to gain insights in building RESTful services as well
as advanced developers who want to delve into complicated topics.

Approach

A step-by-step approach to build complex RESTful services for the real world applications explained
in a conversational and easy-to-follow style. Each topic is explained sequentially and scrupulously by building
on ideas and discussions covered in previous chapters, thus tying the concepts neatly together

Learn more about Kotlin, a new programming language designed to solve problems that software developers face every day brought to you in partnership with JetBrains.

Topics:

Published at DZone with permission of Bhakti Mehta, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}