Looking for the best ways to build reactive and asynchronous Java apps? Presented by Java champions Richard Warburton and Raoul-Gabriel Urma, this hands-on Masterclass course teaches developers to apply the latest asynchronous concurrency techniques to build state-of-the-art Java apps for microservices and service-oriented architectures.
Develop state of the art Java applications
About this workshop
Reactive and asynchronous applications are growing in popularity, but what is the best way to build them? This course teaches you how to apply the latest concurrency techniques to develop state of the art Java applications. With the rise of microservices and service oriented architectures, asynchronous concurrency is now critical to day-to-day Java development.
We start off by reviewing the differences between asynchronous and synchronous programming. Participants will build upon this theory by refactoring a project using different modern concurrency techniques including promises using Java 8’s CompletableFuture, actors using Akka, and reactive streams using RxJava. Thanks to this hands-on experience, you’ll learn the good, the bad, and the ugly between these approaches in terms of compositionality, testability and simplicity.
This course will help you learn new skills and expand your development horizons by applying several established teaching principles. We engage students in regular hands-on coding exercises where you get to take the ideas we cover and apply them in a realistic way. You get to do this on you own laptop in an environment you’re comfortable and familiar with.
Also, we focus on the big picture, rather than the low level details of specific frameworks or libraries. This ensures that we’re instilling long lasting principles that can be applied to many different situations throughout your programming career, rather than just knowledge that will become out of date in 2-3 years. Plus, we’re Java Champions – genuine experts in the Java ecosystem who can answer your questions and help apply the knowledge in the course.
Day 1 – Asynchronous vs Synchronous Programming
- Asynchronous Servlets (3.0) and Spring
- Why use asynchronous communications?
- Solving the C10K Problem and the Microservices Performance problem
- Approaches to Concurrency
- The Reactive Manifesto and Functional Reactive Programming
- Models of Concurrency: Event Based, Promises, The Actor Model, Reactive Streams
- The full stack – from application right down to the OS
- Promises using CompletableFutures
- What is a Promise?
- Creation patterns
- Composition patterns
- Exception handling
- Sequence patterns
Day 2 – The Actor Model with Akka
- What is the Actor model?
- Why and when would you use actors?
- Using Akka
- Testing actors
- Recovering from exceptions
- Integration patterns
- Reactive Streams with RxJava
- Introducing Reactive Streams
- Connecting Reactive streams to databases and web sockets
- Pull vs. Push models
- Using RxJava
- Java 9 Flow API
- Alternative Reactive Stream Implementations
- Threading and Back Pressure
A good understanding of core Java/Java SE (preferably including Java 8, but not required)
A laptop installed with:
- Java SE 8 or later
- Any IDE of your choice
About the trainer
Dr Richard Warburton
Dr Raoul-Gabriel Urma
JAXenter Masterclass 2019 Tickets
. Book before March 28th and save up to £315 per ticket
More by JAXenter Masterclass
Park Plaza Victoria London
239 Vauxhall Bridge Road
London SW1V 1EQ United Kingdom
The four-star Park Plaza Victoria hotel in London, situated within walking distance of Victoria train, coach, bus and Underground stations, provides an excellent transportation link to London Heathrow and London Gatwick airports. Offering on-site meeting facilities, dining options, Amber Spa and an Executive Lounge, this Victoria Station hotel is thoughtfully designed to suit business, conference and leisure travelers alike.
Centrally located to some of the city’s main tourist and shopping attractions: Buckingham Palace, Harrods, the Houses of Parliament, Theatreland, Oxford Street