Тёмный

Java Streams: Beyond The Basics 

Jfokus
Подписаться 11 тыс.
Просмотров 71 тыс.
50% 1

(Recorded at Jfokus 2016. www.jfokus.com)
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.

Опубликовано:

 

27 май 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 24   
@mariemjabloun4500
@mariemjabloun4500 2 года назад
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.
@jvsnyc
@jvsnyc 3 года назад
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.
@HariharDas
@HariharDas 8 лет назад
Examples were very practical.
@cordovajose5693
@cordovajose5693 3 года назад
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.
@soumitripattnaik
@soumitripattnaik 7 лет назад
47:24 - 48:01 You can handle the exceptions internally or you can do that in a wrapper lambda, just a much cleaner separation.
@mericet39
@mericet39 7 лет назад
1:10 - 1:38 No presentation is complete without an occurrence like that
@sirrobert4820
@sirrobert4820 4 года назад
Brilliant presentation .... top
@vyshakhkj5348
@vyshakhkj5348 5 месяцев назад
Is there any resource benefit (in the aspect of memory) with streams compared to traditional external iterations. (Not about performance regarding execution time)
@phoneix24886
@phoneix24886 3 года назад
37:23 - "Accululator"! Sounds about right..
@michaelmarquez7980
@michaelmarquez7980 7 лет назад
Uses Mac, surprised the slides freeze up.... bounce
@ASHISHTANWER
@ASHISHTANWER 7 лет назад
Single Video better 3 units of Oracle MOOC. Focus on concepts. Examples make you think, understand and grasp the concepts.
@Ravikumar-gj6qw
@Ravikumar-gj6qw 2 года назад
Thanks
@koraytugay
@koraytugay 5 лет назад
How about `if(logger.levelInfo) {logger.info(getMessage());}`
@homem472
@homem472 5 лет назад
It avoids getMessage to be executed unnecessarily, but it will be necessary to repeat "if" all the time. To avoid this repetition, a function that encapsulates the condition could be created, but this function already exists! It is exactly what the logger.info does. So, I prefer the lambda approach.
@aworden
@aworden 4 года назад
This is a much better approach because you can debug it and figure out what it happening in the code. Promises are a disaster and so is this similar lambda expression idea. Give me an if statement every time please - I'm a human and I need to be able to understand that code! :)
@gianis666
@gianis666 6 лет назад
lambdra expressions
@luisdanielmesa
@luisdanielmesa 7 лет назад
*takeWhile* should be named *takeUntil*, but *dropWhile* is ok...
@yassinenacif418
@yassinenacif418 3 года назад
"Rock your java"
@aworden
@aworden 4 года назад
@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.
@ITech2005
@ITech2005 4 года назад
lol interesting perspective
@sfincione2000
@sfincione2000 4 года назад
Ternary operator not tertiary.
@ggsay1687
@ggsay1687 4 года назад
So basically, learn functional programming to use lambdas correctly.
@nO_d3N1AL
@nO_d3N1AL 7 лет назад
Misleading title. This is basic stuff
@wazeeharaa8100
@wazeeharaa8100 Год назад
1. Dont Show the Tutor which is no use. 2. He is chipping his tongue and lips. That sounds annoying
Далее
Teaching old Streams new tricks  By Viktor Klang
50:51
The cheerleaders saved the day 😄👏 #shorts
00:48
Lambda Expressions in Java - Full Simple Tutorial
13:05
Optional - The Mother of All Bikesheds by Stuart Marks
58:43
how Google writes gorgeous C++
7:40
Просмотров 751 тыс.