Saturday, February 4, 2017

Top 5 Books to learn REST and RESTful WebServices for Java Programmers

The REST has now become the standard way to develop web services. It's no more SOAP, who used to rule the world in last two decade. The SOAP and XML went very well together in past decade but it seems now REST and JSON have overtaken then and doing even better. Since Java is one of the most popular languages to develop backend services, there is a lot of demand for Java developers who knows web services and can implement and expose existing SOAP-based services into REST style, light-weight web services. This is an excellent opportunity for intermediate and experienced Java developers to learn a more job-oriented skill to keep themselves marketable and many Java developer has already started learning REST and RESTful web services in Java.

It's no surprise that I often receive requests via Facebook and email about some book recommendations on REST and RESTful web service development using Java. I have answered many of them personally in the past and this post is just a recollection of those discussions and book recommendations.

In this article, I am going to share top 5 books will help you to learn REST concepts better and also teach you how to develop RESTful WebServices using Java Programming language using JAX-RS API and it's popular implementations e.g. Jersey, Restlet, Apache CXF etc.

5 Books to learn REST and RESTful Web Services in Java

So, without wasting any more time, here is my list of 5 books which has helped me to learn REST better and taught me how to develop RESTful web services in Java using JAX-RS API and it's different implementations.

1. RESTful Web Services by Leonard Richardson
This is one of the books to learn about REST and RESTful web services irrespective of any programming language. This will teach you motivation behind REST, how REST works and many fundamentals related to both web services and doing it in REST style. This book will also teach you what to keep in mind while developing a RESTful API e.g. when to use PUT vs POST methods etc.

Top 5 Books to learn REST and RESTful WebServices for Java Programmers

Some of the things which you will learn in this book include:
  • Basics of essential web technologies e.g. HTTP, URI, and XML.
  • Basics of Resource oriented architecture which forms the base of RESTful web services
  • It will also show you why a RESTful design is simpler and more scalable than equivalent SOAP design
  • Most importantly, the book also includes several real world examples of RESTful web services e.g. Amazon's Simple Storage Service and Atom publishing tool.
  • It will also teach you how to develop RESTful clients in different programming languages e.g. Java, Python, and Ruby using popular frameworks like Restlet for Java, Django for Python and Ruby on Rails. 
In short, one of the essential book a Java web developer should read. This will build your fundamentals if you are completely new and correct many misconceptions if you already know these technologies.

2. REST in Practice: Hypermedia and Systems Architecture by Jim Webber
This is another book which will teach you basics of different web technologies and REST style. This will teach you how to build a solid RESTful API and also explains essential things about web security and issues faced by web services.  You will not just learn about REST but about some other key technologies like OpenId and OAuth, but most important you will learn how to use different HTTP methods while designing RESTful API.

Top 5 Books to learn REST WebServices

3. RESTful Web Services Cookbook By Subbu Allamaraju
This is one of the practical books on developing RESTful web services. This will teach you how to design resources to meet your application requirement and how to translate them in better URIs. You will also learn to implement hypertext constraints using links and link headers, when and how to use Atom and AtomPub etc. You will also understand how to implement concurrency control and caching in RESTful web services and securing RESTful web services using OAuth.

Top 5 Books to learn RESTful WebServices

4. RestLet in Action by Jerome Louvel, Theirry Tempiler and Thierry Boileau
The Restlet is one of the first Java frameworks for developing REST web services. Restlet in Action gets you started with the Restlet Framework and the REST architecture style. You'll create and deploy applications in record time while learning to use popular RESTful Web APIs effectively

Books to learn REST and RESTful WebServices

5. Developing RESTful Services with JAX-RS 2.0, WebSockets, and JSON
In order to simplify development of RESTful Web services and their clients in Java, a standard and portable JAX-RS API has been designed. The Jersey RESTful Web Services framework is open source, production quality, a framework for developing RESTful Web Services in Java that provides support for JAX-RS APIs and serves as a JAX-RS (JSR 311 & JSR 339) Reference Implementation.

 REST and RESTful WebServices books in Java

That's all about 5 good books to learn REST and develop RESTful Web Services in Java. If you are more of guys who prefer training courses than books, then you can also check out Eugen's REST with Spring course, which will teach you how to develop RESTful Web Services using Spring Framework. The course is very detailed and expects that you are familiar with Spring framework, so ideal for intermediate and experienced Java programmers.

Eugen also has various options for his courses suited for different experience level and needs e.g. REST with Spring: The Intermediate class is good for essential knowledge while REST with Spring: The Masterclass is more detail oriented. You can check out all his course options here.

Further Learning
REST API Design, Development & Management
RESTFul Services in Java using Jersey By Bryan Hansen

1 comment :

Post a Comment