Leverage the power of Scala to build scalable and reliable web applications
The Scala programming language has gained a lot of traction in the last couple of years because of its functional orientation and conciseness. The industry has a strong interest in using Scala in modern production systems, and as such, the Spray framework and Akka toolkit became a natural choice for back-end Scala developers building highly-scalable, reliable, reactive REST(ful) web services and APIs.
This video course will be an exciting journey into the universe of the web development using the Scala programming language and frameworks. It is a starting point from which you’ll learn the basics of building REST(ful) web services and APIs using the non-blocking and asynchronous programming models that lie in the heart of the Spray framework. You’ll start off by learning about the REST architecture. After that, you will switch gears to the Akka toolkit and Spray framework, building the sample book catalog application along the way.
Once you’ve learned about the REST architectural style and Actor Model, the foundations that the Spray framework is built upon, you’ll shape out your own REST(ful) web services by providing simple route definitions. Further on, we’ll delve into authentication, authorization, secure transport, documentation, test cases, and caching support. Finally, you will learn how to develop the Spray client API.
What You Will Learn
- Learn the basics of the Actor Model and Akka framework
- Discover the REST architectural style principles and constraints
- Explore the Spray framework’s fundamentals, design, and philosophy
- Explore the core Spray framework modules such as spray-can, spray-routing, spray-json, spray-caching, and spray-client
- Secure Spray REST(ful) web services and APIs using HTTP Basic Auth
- Configure Spray applications with HTTPS support
- Document Spray REST(ful) web services using Swagger
- Explore REST(ful) web service contracts using Swagger UI
- Add Spray caching support using server-side caches and ETags
- Develop test suites for Spray REST(ful) web services
- Call external REST(ful) web services using the Spray client
- Use JSON representation of the resources on the server and on the client