Functional Programming With Java
Pluralsight
Course Summary
Learn to incorporate some tools and concepts from functional programming into Java code, both in Java 8 and earlier versions.
-
+
Course Description
If you can write object-oriented programs in Java, and you'd like to write even better Java, then this course is for you. Starting with real business problems, see how concepts from functional programming can help you in Java. From function values to streams, learn the significance of some of Java 8's additions -- and get the same benefits in Java 6! This course teaches ways of thinking that help functional programmers write code that doesn't break. This course is designed for Java programmers, although any object-oriented developer can benefit from the very clear explanations of concepts. It assumes no familiarity with functional programming. After this course, you'll have more design options and ideas, and you'll find writing Java more fun than before.
-
+
Course Syllabus
Why Functional Programming?- 28m 17s
—Hello 1m 43s
—Thinking and Coding 0m 54s
—Functions as Values 0m 38s
—Looking Back 1m 16s
—OO Implementation 1m 22s
—OO Design 1m 25s
—More OO Design 1m 19s
—What's the Problem? 0m 36s
—Java 8 Lambda 1m 58s
—Lambdas to the Rescue 1m 9s
—Is This better? 0m 59s
—Deduplication 2m 32s
—Data In, Data Out 2m 10s
—Duplication in the Small 1m 47s
—Restoring Type Safety 1m 28s
—A Familiar Pattern 1m 7s
—Java 6 1m 40s
—Secret Functional Programmer Words 1m 29s
—Scaling This Up 1m 58s
—Deeper Meaning 0m 37sImproving Code With Functional Programming- 31m 29s
—The Setup 1m 42s
—The Quick Solution 1m 42s
—The Benefit 1m 15s
—Code Review 1m 30s
—Isolation 1m 37s
—Testing With Isolation 1m 35s
—What I Want, When I Want It 0m 56s
—Now in Java 6 1m 41s
—Is it Worth It? 1m 39s
—Underlying Differences 0m 58s
—The Next Mission 2m 2s
—When I was Younger 1m 30s
—Introducing Iterables 1m 12s
—External and Internal Iteration 1m 36s
—Changing and Uniting 1m 12s
—Pipeline 1m 50s
—Now in Java 8 1m 23s
—Filter, Map, Reduce With a Basket 1m 34s
—Optional Values 1m 5s
—Increasing Clarity 1m 44s
—Compare the Results 1m 36sStreams: Coding in Context- 31m 52s