Functional Programming with Java and Threads
About this Course
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.Created by: Vanderbilt University

Related Online Courses
Explore the sound that comes from the narrative world of film. Understand what film pioneers did to use images for sound in the silent era. Learn how the advent of sound technology transformed... more
Explore the basics of programming and familiarise yourself with the Python language. After completing this course, you will be able to write Python programs in Jupyter Notebook and describe basic... more
This course provides a comprehensive analysis of project risk management. It begins with foundational concepts and frameworks, progressing to specific steps of risk management, and real-world... more
This specialization studies spacecraft relative orbits. This is of interest to mission scenarios including rendezvous and docking, inspection circumnavigation trajectories, on orbit assembly, space... more
This course will help prepare students for developing code that can process large amounts of data in parallel on Graphics Processing Units (GPUs). It will learn on how to implement software that... more