JavaJava
Conference45min
INTERMEDIATE

Streams Below the Surface

This talk explains how Java streams work, covering their implementation, performance pitfalls, and practical usage principles. It includes discussion of the new Gatherers feature and the greedy flag, aiming to help developers write clearer and more efficient stream code by understanding the underlying design and best practices.

Cay Horstmann
Cay HorstmannSan José State University
Maurice Naftalin
Maurice NaftalinMorningside Light Ltd

talkDetail.whenAndWhere

Tuesday, March 24, 10:10-10:55
Room 8
talks.roomOccupancytalks.noOccupancyInfo
talks.description
Java programmers ❤️ streams! They brought us at least some of the joys of functional programming: code that’s clear and elegant, and even, sometimes, performant. But how do they work? Many people don’t know, and that puts them in danger of writing code that seriously underperforms. In this talk we’ll look at the principles and some details of the implementation, and we’ll work out some useful principles about how – and even whether – to use streams in practice. The talk will be up to date with the new feature of Gatherers, revealing the mystery of the greedy flag.

You’ll come away from this talk with a new understanding of how streams work, the assumptions that underlie their design, and how you too can write stream code that both looks good and performs well.

streams
gatherers
implementation
performance
talks.speakers
Cay Horstmann

Cay Horstmann

San José State University

Germany

After growing up in the German countryside, I studied in the United States (M.S. in computer science from Syracuse University, and a Ph.D. in mathematics from the University of Michigan in Ann Arbor). For four years, I was VP and CTO of an Internet startup that went from 3 people in a tiny office to a public company. I taught computer science at San Jose State University and held visiting appointments at universities in Germany, Switzerland, Vietnam, and Macau. In my copious spare time I write books and articles on programming languages and computer science education.
Maurice Naftalin

Maurice Naftalin

Morningside Light Ltd

United Kingdom

Five decades working in IT: developer, designer, architect, manager, teacher, and author. Working with Java since 1.0. Author, Mastering Lambdas; co-author, Java Generics and Collections (second edition out now!) Disorganises the unconference JAlba. Java Champion. Speaks at conferences a lot.

talkDetail.rateThisTalk

talkDetail.poortalkDetail.excellent

talkDetail.ratingNotYetAvailable

talkDetail.ratingAvailableWhenStarted

talkDetail.signInRequired

talkDetail.signInToRateDescription

occupancy.title

occupancy.votingNotYetAvailable

occupancy.votingAvailableBeforeStart

talkDetail.signInRequired

occupancy.signInToVoteDescription

comments.title

comments.speakerNotEnabledComments