Java Streams API Developer Guide
4.5 (20 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,241 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Java Streams API Developer Guide to your Wishlist.

Add to Wishlist

Java Streams API Developer Guide

Functional Programming with Java 8
New
4.5 (20 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
2,241 students enrolled
Created by Nelson Djalo
Last updated 9/2017
English
Current price: $10 Original price: $75 Discount: 87% off
5 hours left at this price!
30-Day Money-Back Guarantee
Includes:
  • 2.5 hours on-demand video
  • 6 Articles
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Functional Programming
  • Know how to use Java Streams API
  • Understand the benefits Streams have to offer
  • Know how to use concrete > abstraction > concrete pattern
  • Gather stats from datasets
  • Deliver more features instead of focusing how to make code that works right.
  • Use streams to perform transformations using stream().map(...)
  • Learn awesome IDEA features
View Curriculum
Requirements
  • You should be able to use PC or MAC
  • You should be familiar with some Java syntax
Description

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.

I cant wait to see you inside.

Thaks

Who is the target audience?
  • Anyone who wants to learn Java Streams
  • Anyone who wants to learn Functional Programming
  • Anyone who wants to write less code and deliver more
  • Anyone who knows some Java. Beginners are very welcome
  • Any want who wants to improve their Java skills
Students Who Viewed This Course Also Viewed
Curriculum For This Course
44 Lectures
02:26:03
+
Introduction
1 Lecture 01:07

In this lecture you will get to know me.

Preview 01:07
+
Environment Setup
4 Lectures 19:44

In this lecture you will install Java Development Kit.

Preview 03:21

In this lecture you will download Intellij IDEA. You will also install and configure google style code for better code formatting.

Preview 06:25

In this lecture you will configure Intellij and JDK 1.8. You will also run all test cases which will output to the console all the material to be covered in this course.

Setting up JDK with Intelijj and running all tests cases
04:47

In this lecture you will learn the code base and how to switch between branches that have the completed and the staring point source code.

Codebase walkthrough and branches
05:11
+
Lets get started
5 Lectures 18:23

In this lecture you will learn what streams are and what problem they solve.

Intro to Java Stream API (KEYNOTE)
02:58

Imperative Approach Exercise
00:17

In this lecture you will learn how to solve problems using the imperative approach.

Preview 06:15

In this lecture you will learn how to solve problems using the declarative / functional style approach.

Declarative / Functional Style Approach
05:10

In this lecture you will learn how streams pipeline work and what I call the Concrete > Abstraction > Pattern.

Understanding Stream Pipeline. Concrete > Abstraction > Concrete
03:43
+
Iterating with Streams
4 Lectures 10:52
Iterating with IntStream (range and rangeClosed)
04:24

Exersise
00:11

Iterating through lists with IntStream (Exercise Solution)
03:12

IntStream.iterate
03:05
+
Max, Min & Comparators
3 Lectures 05:14
Finding min number
03:58

Exercise
00:09

Finding max (Exercise Solution)
01:07
+
Distinct and Collectors.toSet()
2 Lectures 04:48
Removing duplicates in a List
02:43

Removing duplicates in a List with Collectors.
02:05
+
Filtering and Transformations
4 Lectures 19:22
Filtering
06:08

Transformations with stream.map
08:42

Exersise
00:12

stream.mapToDouble (exercise solution)
04:20
+
Find Any vs Find First
3 Lectures 09:20
stream.findAny
02:42

stream.findFirst
02:57

Understanding core difference between stream.findAny and stream.findFirst
03:41
+
Pulling out statistics from your data
6 Lectures 13:41
Counting
02:07

Min & Max without comparators
03:38

Calculating Averages
02:52

Exercise
00:08

Summing up numbers (Exercise Solution)
01:56

Gathering Statistics with Streams
03:00
+
Grouping data with streams like SQL
2 Lectures 08:21
Grouping data
04:26

Grouping & Counting data
03:55
4 More Sections
About the Instructor
Nelson Djalo
4.6 Average rating
693 Reviews
12,461 Students
4 Courses
Software Engineer

Hi my name is Nelson and I am a software developer for a startup. I graduated in London with a 1st class honours in Computer Science and in the past few years I have programmed in various programming languages such as PHP, Python, Ruby, C#. In my day to day job I am a Java and JavaScript developer and primarily write large scale web applications using AngularJS. In my spare time, I love teaching, Photography, Baking, Football and Sewing, Yes I am an all-rounder! :)