Session Details

Topic(s)

Technologies

Learning to Love the Lambda in the Stream

Regular Session

Java 8 lambdas and streams introduce a powerful new framework into the java language. This framework allows complex and possibly parallel computations to be expressed succinctly and performed efficiently. Streams are a complement to Object Oriented Programming: OO Programming has traditionally allowed us to override operations in subclasses but keep control structures in suberclasses. Streams allow the control structures themselves to be abstracted away, allowing the developer to focus on the problem at hand and leaving the details to the stream framework. The builder pattern may be used to support unit testing of streams. Lambdas and streams provide a way to learn and experiment with functional programming concepts without the daunting task of also learning a new programming language. Frequent use of lambdas will make learning a functional programming language and ecosystem an easier task, because the functional programming concepts will have familiarity.