Having mostly used Java 7 in the last years and after some month of coding only with TypeScript, JavaScript and Solidity, I've now worked through the video course „Become at ease with Java 8“ by Stijn De Mulder. My motivation was to give me a refresh on Java 8 features, which I only knew from magazine articles and "playing around".
What's in and what's not in the course?
The course focuses on these major languages extensions which came with Java 8:- static and default methods on interfaces as well as rules for multiple inheritance
- lambdas, method references and the
Function
interface Optional
with its methods likeget()
,orElse...()
,map()
andflatMap()
- streams including its methods like
map()
,flatMap()
,reduce()
,collect()
- the new
What was good and what could be improved?
The course is generally well done and explains all covered topics in a decent speed. I especially liked the format of the video course: Each chapter starts with an introduction followed by easy to follow explanations of the new features, with diagrams and code examples and ends with a prepared set of JUnit tests which demonstrated the new Java features with real code. This gave me the chance to watch the most part of the course on the train (with about 1.5x playback speed). Afterwards I took about another 2 hours at my desk to make all the unit tests green, mostly by myself, with some sneaking into the video material again. Unfortunately Stijn tripped over his tongue a few times and at least some of these glitches I would have cut out or recorded the scene again. Also some of the code from the git repository did not match the video anymore and some tests even got wrong. But that's about all criticism I can come up with. So, I rate this course with 4.5 of 5 stars.What I've learned from it?
Most of the new Java 8 features, like the static and default methods for interfaces as well asOptional
look pretty easy and straight forward for me. Having used the Joda date time library for over 10 years, there was not much new here except the with...()
methods and TemporalAdjusters
. And most of the lambda an streaming features, I already knew from JavaScript, where I loved to make use of this programming style. Thus, in total, I've mostly learned that I am ready for a Java 8 project, but that's fine!
Twitter
Facebook
Reddit
LinkedIn
StumbleUpon
Email