Asynchronous programming is what the CompletionStage API, from the JDK, brings you. This course covers all the patterns you need to create efficient asynchronous data processing pipelines, including thread control and error recovery.
As a Java developer, being able to create asynchronous systems allows you to develop very efficient applications, that need both throughput and performance. In this course, Java Fundamentals: Asynchronous Programming Using CompletionStage, you will learn all the patterns brought to you by this API. First, you will learn the concepts of asynchronous programming: tasks, non-blocking calls and multi-threaded systems. Then, you will see how to build data processing pipelines where the completion of a first task automatically triggers the execution of a next task, passing data to it. Finally, you will see how to create performant systems by controlling the execution of each task in the right thread. Mastering all of this will help you in creating performant and error-free asynchronous systems with the only dependency being the JDK itself.
Passionate about programming computers for over 20 years, Jose made his debut in assembler and C, C for SIMD parallel machines before adopting Java as an object-oriented language. Assistant professor in Paris North University for more than 15 years, Jose also brings his expertise to many projects, in various industrial fields.
Course Overview Hello. My name is Jose. I'm a Java champion and Java 1 rock star. I live in Paris, and I'm very excited to present my new course, Java Fundamentals: Asynchronous Programming Using CompletionStage. This course is about creating asynchronous non-blocking applications and systems in Java. First, you will learn the technical terms, the technical vocabulary you need, then you will see how to set up complex asynchronous data processing pipelines made of tasks that are executed automatically passing data from one another. You will be able to create robust systems, handling errors and exceptions in a proper way to log them or to recover from them. And then you will see how to finally control which thread executes which task for optimal performance, all this with many examples and live demos. Before you move on, be sure to be familiar with all these, the Java language, a little bit of concurrency, and the exception system in Java. Asynchronous programming is not an easy topic, and I will be very happy to show you how it works in the JDK and make the CompletionStage API a tool that will help you become a better Java application developer.