Overview
This course provides an in-depth journey through modern Java object-oriented and function programming concepts and features, and explores how to apply these concepts and features to implement efficient and scalable concurrent programs using very modern Java features like virtual threads.
The first week gives an overview of Java object-oriented and functional programming paradigms. The second and third week delve into Java functional programming features, such as lambda expressions, method references, and functional interfaces. The final week explores the intricacies of very modern Java platform threads, virtual threads, as well as Java's asynchronous computation features, such as Future & FutureTask.
After completing this course, you'll gain a deep understanding of both object-oriented and
functional programming concepts and features in Java, along with the ability to apply these concepts and features to develop multi-threaded programs. To illustrate key points, we walk through numerous case
studies, all of which are available in open-source form from my GitHub repository.
Syllabus
- Overview of Java Object-Oriented and Functional Programming
- Introduction to Java Programming Paradigms
- Java Functional Programming with Lambda Expressions and Method References
- Java Functional Interfaces
- Java Thread Objects and Functional Programming
Taught by
Dr. Douglas C. Schmidt and Dr. Jules White