Vanderbilt University - Functional Programming with Java and Threads
- Offered byCoursera
Functional Programming with Java and Threads at Coursera Overview
Duration | 18 hours |
Start from | Start Now |
Total fee | Free |
Mode of learning | Online |
Official Website | Explore Free Course |
Credential | Certificate |
Functional Programming with Java and Threads at Coursera Highlights
- Earn a certificate of completion
- Add to your LinkedIn profile
- 4 quizzes
Functional Programming with Java and Threads at Coursera Course details
- What you'll learn
- Be fluent in the use of modern Java object-oriented and functional programming mechanisms, particularly as they pertain to multi-threaded programs.
- Know where to find additional sources of information on how to program multi-threaded Java object-oriented and functional programs.
- 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.
Functional Programming with Java and Threads at Coursera Curriculum
Overview of Java Object-Oriented and Functional Programming
Overview of this MOOC
Overview of Week 1
Java's Supported Programming Paradigms: Overview
Java's Supported Programming Paradigms: Imperative Programming
Java's Supported Programming Paradigms: Declarative Programming
Java's Supported Programming Paradigms: Case Study ex0
Overview of Java: Key Object-Oriented Concepts & Features
Overview of Java: Structural Elements Supported by Object-Oriented Java
Overview of Java: Object-Oriented Case Study ex0
The Java Object-Oriented Image Crawler Case Study (Part 1)
The Java Object-Oriented Image Crawler Case Study (Part 2)
The Java Object-Oriented Image Crawler Case Study (Part 3)
The Java Object-Oriented BardWords Case Study (Part 1)
The Java Object-Oriented BardWords Case Study (Part 2)
The Java Object-Oriented Bardwords Case Study (Part 3)
New Quiz
Java Functional Programming with Lambda Expressions and Method References
Overview of Week 2
Part 1 of Assignment 1 Walkthrough - Specification
Part 2 of Assignment 1 Walkthrough - Skeletons
Part 3 of Assignment 1 Walkthrough - Unit Tests and BardPlayAnalyzer Test
Overview of Java: Key Functional Programming Concepts & Features - Composing Functions
Overview of Java: Key Functional Programming Concepts & Features - Composing Functions in Case Study ex1
Overview of Java: Key Functional Programming Concepts & Features - Avoiding Side-Effects
Overview of Java: Key Functional Programming Concepts & Features - Immutable Objects
Overview of Java: Key Functional Programming Concepts & Features - Case Study ex2 (Part 1)
Overview of Java: Key Functional Programming Concepts & Features - Case Study ex2 (Part 2)
Overview of Java: Key Functional Programming Concepts & Features - Case Study ex2 (Part 3)
Combining Object-Oriented & Functional Programming in Java (Part 1)
Combining Object-Oriented &Functional Programming in Java (Part 2)
The Role of Mutable State in Modern Java Programs (Part 1)
The Role of Mutable State in Modern Java Programs (Part 2)
Applying Mutable State in Modern Java Programs – Case Study ex3
Overview of Java Lambda Expressions
Using Java Lambda Expressions Correctly and Efficiently
Applying Java Lambda Expressions - Case Study ex4
Benefits of Java Lambda Expressions -Case Study ex5
Implementing Closured with Java Lambda Expressions
Applying Closures & Java Lambda Expressions in Case Study ex6
Overview of Java Method References
Applying Java Method References - Case Study ex7
New Quiz
Assignment 1 - Java Object-Oriented and Functional Array
Java Functional Interfaces
Overview of Week 3
Part 1 of Assignment 2 Walkthrough - Specification
Part 2 of Assignment 2 Walkthrough - Skeletons
Part 3 of Assignment 2 Walkthrough - Unit Tests and BardPlayAnalyzer Test
Java Functional Interfaces: Overview
The Java Predicate Functional Interface
The Java Predicate Functional Interface: Case Study ex8
The Java Function Functional Interface
The Java Function Functional Interface: Case Study ex9
The Java BiFunction Functional Interface
The Java BiFunction Functional Interface: Case Study ex11
The Java Supplier Functional Interface: Optional Usage
The Java Supplier Functional Interface: Case Study ex12
The Java Supplier Functional Interface: Constructor References
The Java Supplier Functional Interface: Case Study ex13
The Java Consumer Functional Interface
Applying the Java Consumer & Function Functional Interfaces
The Java Function & Consumer Functional Interfaces: Case Study ex14
Other Properties of Java Functional Interfaces
New Quiz
Assignment 2 - Java Sequential Functional Programming of Bard Works Analysis
Java Thread Objects and Functional Programming
Overview of Week 4
Part 1 of Assignment 3 Walkthrough - Specification
Part 2 of Assignment 3 Walkthrough - Skeletons
New Video
Introduction to Threads & Java Thread Objects
Java Platform Threads vs. Virtual Threads (Part 1)
Java Platform Threads vs. Virtual Threads (Part 2)
Applying Java Platform Threads & Virtual Threads: Case Study ex15
Key Methods in a Java Thread
Applying Java Functional Programming Features to the ThreadJoinTest Case Study
Applying Java Functional Programming Features & Threads in ThreadJoinTest
Apply Java Functional Programming Features: the ThreadJoinTest Case Study
Evaluating the ThreadJoinTest Case Study
Motivating the Need for Java Futures
Overview of the Future Lifecycle and Common Human Known Uses
Overview of Java Futures
Overview of Java FutureTask
Applying Java Futures in Case Study ex16
Course Wrapup
Quiz #4
Assignment 3 - Java Concurrent Functional Programming of Bard Works Analysis