Hands-On Functional Programming with Java

Hands-On Functional Programming with Java

Create robust and maintainable Java applications using the functional programming paradigm

Bestseller
15.87 9.52

About This Course

Functional programming, a popular programming paradigm used to simplify many tasks, will help you write flexible and succinct code. This paradigm makes programs easier to reason with because they're deterministic (one specific input will always give you the same output).

This course takes a thought-leadership approach, gently introduces you to Functional Programming, and takes you all the way to becoming a master of the paradigm. You'll then learn how to work with higher-order functions, lambda functions, collections and more. You'll learn how to apply the best data structures and algorithms that optimize functions and also how to reuse and refactor functional blocks of code. This course is updated to Java 12 so that you will be ahead of the crowd.

By the end of the course, you will have mastered the concepts regarding functional programming along with OOP, to build robust and highly testable applications.

The code files for this course are available at - https://github.com/PacktPublishing/Hands-On-Functional-Programming-with-Java

Other Information

  • Certificate will provided in this course on Completion
  • Full lifetime access
  • Available on Mobile & Laptop

What Students Will Learn In Your Course?

• Utilize the functional programming paradigm on practical problems in Java.
• You will be able to create robust software with few errors.
• Discover the Java Stream interface for developing functional source code.
• Implement lambda expressions all through your code, making it more readable and maintainable.
• You will implement the Collections framework and all of its interfaces.

Are There Any Course Requirements Or Prerequisites?

A solid understanding of Java concepts is required.

Who Are Your Target Students?

If you are a Java developer and want to improve your applications using the functional programming approach, then this course is for you.

Course Content

  • 30 lectures
  • 01:49:17
  • The Course Overview
    00:02:55
  • What Is Functional Programming?
    00:02:14
  • Implementing Anonymous Classes (Example A)
    00:03:26
  • Lambda Expression (Lambda Version of Example A)
    00:02:48
  • Differentiating Interfaces versus Functional Interfaces
    00:02:29
  • Implementing the Syntax of Lambda Expressions
    00:04:07
  • Replacing Anonymous Classes
    00:03:15
  • Using Method References
    00:02:32
  • Best Practices for Using Lambda Expressions
    00:01:56
  • Introduction to the Collections Framework
    00:03:34
  • Implementing the Set Interface Using HashSet and LinkedHashSet
    00:05:14
  • Implementation of the SortedSet Interface
    00:04:18
  • Deploying the List Interface
    00:04:13
  • Working with the Queue Interface
    00:04:11
  • Introduction and Implementations of Maps
    00:05:01
  • Understanding the Stream API and Constructing Streams
    00:04:11
  • Intermediate Stream Operations
    00:05:26
  • Terminal Stream Operations and the Optional Class
    00:04:56
  • Implementing Stream Operations in Examples
    00:03:05
  • Operations on Collections & Creating Collections Using Collector
    00:04:38
  • Hands-on Collection Sorting Using Streams
    00:03:56
  • Advanced Filtering and Mapping Using Streams
    00:03:19
  • Using Reduce for Advanced Transformations
    00:03:16
  • Implementing flatMap in Examples
    00:03:08
  • Advanced Grouping of Objects Using Streams
    00:04:28
  • Advanced Joining and Partitioning of Objects Using Streams
    00:04:07
  • Benefits of Concurrent Streams and Concurrency in General
    00:03:15
  • Implementing Parallel Streams
    00:02:59
  • Parallel Stream Operations
    00:03:00
  • Comparing Sequential to Parallel Streams
    00:03:20
Image

Packt Publication

  • 4.48 (2)
  • 13 Reviews
  • 2 Students
  • 935 Courses