Java Streams: Beyond The Basics

preview_player
Показать описание

Java Streams: Beyond The Basics

Lambda expressions and the streams API add a more functional style of programming to Java; something developers have not really had in the past. The session will start with a short summary of the key features of both Lambda expressions and streams before moving on to some real world examples of how to use them effectively, including some pitfalls that should be avoided. We'll finish off with a quick look at some of the ideas for improvements to streams in JDK 9.

Simon Ritter, Azul Systems

Simon Ritter is the Deputy CTO of Azul Systems. Simon has been in the IT business since 1984 and holds a Bachelor of Science degree in Physics from Brunel University in the U.K. Originally working in the area of UNIX development for AT&T UNIX System Labs and then Novell, Simon moved to Sun in 1996. At this time, he started working with Java technology and has spent time working both in Java development and consultancy. Having moved to Oracle as part of the Sun acquisition, he focused on developer outreach for the core Java platform, Java for client applications and embedded Java. Now at Azul he is helping the Java community to understand Azul?s Java virtual machine technologies and products.
Рекомендации по теме
Комментарии
Автор

These is an amazing talk. Very rich and explains the reason behind Supplier, lambda... It help us to know what to use in each situation.

mariemjabloun
Автор

Best video I've seen about this topic. Thank you very much. Yet this done before Java 11. Starting with Java 11, peek() will not work as expected in the slides. For example if the terminal operation is a count(), the JVM can infer the result without processing the pipeline, and peek() will not run. That can be helped by preceding the peek with a innocuous filter. That way the terminal function cannot be inferred and the pipeline has to be processed, running the intermediate keep() code.

cordovajose
Автор

The people who rated this low must have wanted way beyond the basics. Already, I like how clearly he set up in our minds when the Supplier pattern is appropriate. All the places I was already thinking of -- and more. Nice.

jvsnyc
Автор

47:24 - 48:01 You can handle the exceptions internally or you can do that in a wrapper lambda, just a much cleaner separation.

soumitripattnaik
Автор

1:10 - 1:38 No presentation is complete without an occurrence like that

mericet
Автор

Is there any resource benefit (in the aspect of memory) with streams compared to traditional external iterations. (Not about performance regarding execution time)

vyshakhkj
Автор

37:23 - "Accululator"! Sounds about right..

phoneix
Автор

Uses Mac, surprised the slides freeze up.... bounce

michaelmarquez
Автор

Single Video better 3 units of Oracle MOOC. Focus on concepts. Examples make you think, understand and grasp the concepts.

ASHISHTANWER
Автор

How about `if(logger.levelInfo) {logger.info(getMessage());}`

koraytugay
Автор

*takeWhile* should be named *takeUntil*, but *dropWhile* is ok...

luisdanielmesa
Автор

@27m - it makes no difference that you check some state in a ternary operator or do it in a function block as you were doing. There's no leak of state. Yes, it's not functional, but this is why functional programming never found practical roots in commercial programming (only academia) and it will die a death (not soon enough) when the companies using it realize that nobody can maintain the awful functional code written by those "bright sparks" who blaze a trail and never stick around to support their own code.

aworden
Автор

So basically, learn functional programming to use lambdas correctly.

ggsay
Автор

1. Dont Show the Tutor which is no use.
2. He is chipping his tongue and lips. That sounds annoying

wazeeharaa