Modern Java - Learn Java 8 features by coding it

Go to class
Write Review

Modern Java - Learn Java 8 features by coding it provided by Udemy is a comprehensive online course, which lasts for 11 hours worth of material. Modern Java - Learn Java 8 features by coding it is taught by Dilip S. Upon completion of the course, you can receive an e-certificate from Udemy. The course is taught in Englishand is Paid Course. Visit the course page at Udemy for detailed price information.

Overview
  • Learn Lambdas, Streams , new Date APIs, Optionals and Parallel programming in Java 8 by coding it.

    What you'll learn:

    • Learn Functional programming in Java
    • Complete understanding of Lambdas, Streams , Optional via code.
    • Students will be able to implement the new Java 8 concepts in real time
    • Learn to build complex Streams Pipeline.
    • Learn the new Date/Time Libraries in Java 8
    • Learn to use Method Reference , Constructor reference syntax.
    • Learn and understand Parallel Programming with the Streams.
    • Student will be able to upgrade their Java knowledge with the new Functional Features.
    • This course will be continuously updated.

    Learn the newJava 8Features by coding it. This is a pure codingcourse and you will get a completeunderstanding of all theJava 8features by coding it.

    Why Should I take this course ?

    • This course will help theJavadevelopers to build their knowledge on the newJava 8features.

    • All the new features such asLambdas, Streams , Optionals, Functional Interfaces and Parallel Programmingwill be explained via code.

    • This course will give you the confidence on implementing newJava 8features in realJavaprojects.

    • By the end of this course you will have a complete understanding of new Java 8 functional features.

    Course Overview :

    Section 1 -Getting Started:

    • This section explains about what will be covered in this course.

    Section 2-Why Java-8 ?:

    • This section covers Why Java 8 is important?.

    • This section explains about difference between Imperative Programming and Declarative Programming.

    Section 3-WorkSpace Setup - Mac/Windows:

    • This section covers the installation ofJavaandIntelliJinMac and Windows.

    Section 4: Introduction to Lambda

    • This section covers the Why Lambda is needed , Lambdas Syntax and How to implement Lambdas ?

    • Implement the Runnable interface using Lambdas.

    • Implement the Comparator interface using Lambdas.

    Section 5: Lambdas and Functional Interfaces

    • This section covers the new Functional Interfaces that got introduced as part of Java 8.

      • Consumer Functional Interface

      • Predicate Functional Interface

      • Function Functional Interface

      • Supplier Functional Interface.

    Section 6 : Constructor and Method References

    • This section covers the new Method Reference and the Constructor Reference.

      • How Method Reference simplifies the code.

      • How to use Method reference along with Lambdas.

      • How to use Constructor Reference to create new objects.

    Section 7 : Lambdas and Local variables ( Effectively Final )

    • This section covers the local variable and how it should used in Lambdas.

    • Definition of Effectively Final scope of a variable.

    Section 8 : Streams API

    • This section covers the Streams API which is one of the important feature that got introduced as part of Java8.

    • How the Stream API Works Internally ?

    • How Collections are different from Streams ?

    • How to debug a Stream ?

    Section 9 : Streams API Operations

    • This section covers different Streams API operations that can be used in Streams to achieve an objective.

    • Streams Operations such as :

      • map()

      • flatMap()

      • distinct()

      • count()

      • filter()

      • reducer()

      • Map, Filter and Reduce pattern.

      • max()

      • min()

      • limit()

      • skip()

      • allMatch(), anyMatch() and noneMatch()

      • findAny() and findFirst()

    • Explanation of Stream operations that are Short Circuit operations.

    Section 10 : Streams API - Factory Methods

    • This section covers different Streams API factory method that can be used to create Streams.

    Section 11: Numeric Streams

    • This section covers the Introduction to Numeric Streams which can be used to perform some numeric related operations.

    Section 12: Terminal Operations Streams

    • This section covers different way to collect the data from the Streams Pipeline.

    • Terminal Operations such as :

      • joining()

      • counting()

      • mapping()

      • max(), min()

      • sum()

      • average()

      • groupingBy()

      • partitioningBy()

    Section 12: Streams API - Parallel Processing

    • This section covers how to perform the Parallel processing using Streams.

    • How Parallel Programming makes use of the processors in your machine to perform concurrency operations?

    • How Parallel Programming works internally ?

    • How to check the performance between the sequential and parallel programming ?

    • Scenarios when not to use parallel programming.

    Section 12: Optional

    • This section covers What is Optional and the benefits of Optional.

    • How Optional can help you avoid Null Pointer exception.

    • Exploring the different operations that are part of Optional such as :

      • empty()

      • ofNullable()

      • of()

      • orElse()

      • orElseGet()

      • orElseThrow()

      • isPresent()

      • ifPresent()

      • map()

      • flatMap()

      • filter()

    Section 12: New Date/Time Libraries

    • This section covers new Date/Time Libraries such as LocalDate, LocalTime, LocalDateTime.

    • How to create/edit the LocalDate,LocalTime and LocalDateTime instances using different approaches.

    • How to find the difference between the LocalDate, LocalTime and LocalDateTime using Period, Duration.

    • How to represent the time in the Machine Readable Format using Instant.

    • How to use the TimeZone using the ZonedDateTime.

    • How to Format the Date using the DateTimeFormatter.

    By the end of this course you will have a complete understanding of all the Java 8 features and implement it in real Java projects.