Java Streams API Developer Guide

Java Streams API Developer Guide

English | MP4 | AVC 1280×720 | AAC 48KHz 2ch | 2.5 Hours | 354 MB

Functional Programming with Java 8

Java 8 brought a lot great new features to the table. A lot people say, the community was late in bringing these features, but what often people dont realise is that brought these new features late but what they did exceptionally well was to implement them better than anyone and give us developers a wonder API to use, and one of the them was the Stream API.

Before Java we wrote a lot code for simple logic and yet we could get it wrong very easily. Well this is not the case with Java 8 in particulate with Streams. With Streams we focus on coding and deliver what we indent rather than thinking of how we are going to code the logic to do what we intend. Streams focuses on the ALL instead of the PARTS. Streams not only focuses on the ALL but it also allows us to write functional style programming, and this is what makes Streams and the Java programming language very attractive to developers.

This course is packed with awesome sections that will take you the journey from from zero to hero. You will learn and understand what I call the

concrete > abstraction > concrete phase

and once you grasp this concept we will dive into the abstraction phase and learn awesome features such as

  • Map
  • Filter
  • Flatmap
  • Reduce
  • Average
  • Sum
  • Min
  • Difference between intermediate & terminal operations
  • And much more

Finally at the end of this course I will teach how streams work internally, their order of execution and the performance benefits they have to offer.

The best way to learn any concept is to learn and practice as you go along. So, I packed this course with plenty of exercise for you to challenge your to ensure you learn and start using functional programming with stream moving forward in you career as a Java software engineer.

Table of Contents

Introduction
1 Introduction

Environment Setup
2 Lets install Java Development Kit JDK
3 Lets install Injellij IDEA
4 Setting up JDK with Intelijj and running all tests cases
5 Codebase walkthrough and branches

Lets get started
6 Intro to Java Stream API KEYNOTE
7 Imperative Approach Exercise
8 Imperative Approach Solution
9 Declarative Functional Style Approach
10 Understanding Stream Pipeline. Concrete Abstraction Concrete

Iterating with Streams
11 Iterating with IntStream range and rangeClosed
12 Exersise
13 Iterating through lists with IntStream Exercise Solution
14 IntStream.iterate

Max Min Comparators
15 Finding min number
16 Exercise
17 Finding max Exercise Solution

Distinct and Collectors.toSet
18 Removing duplicates in a List
19 Removing duplicates in a List with Collectors.

Filtering and Transformations
20 Filtering
21 Transformations with stream.map
22 Exersise
23 stream.mapToDouble exercise solution

Find Any vs Find First
24 stream.findAny
25 stream.findFirst
26 Understanding core difference between stream.findAny and stream.findFirst

Pulling out statistics from your data
27 Counting
28 Min Max without comparators
29 Calculating Averages
30 Exercise
31 Summing up numbers Exercise Solution
32 Gathering Statistics with Streams

Grouping data with streams like SQL
33 Grouping data
34 Grouping Counting data

Reduce and Flatmap
35 Reduce
36 Exercise
37 Flatmap

Joining Strings
38 Exercise
39 Joining Strings PART Exercise Solution
40 Joining Strings PART 2

Lets understand how steams really work
41 Understanding .collect…
42 Collectors and Multitrheading
43 Intermidiate terminal operators and lazy valuation
44 The Order of how streams process data

Lets wrap up
45 Thank you