Сборщики потоковых данных: Создавайте собственные операции для работы с потоками!
HappyCoders
0:00 / 0:00
Сборщики потоковых данных: Создавайте собственные операции для работы с потоками!
161 просмотр · 8 месяцев назад
HappyCoders
1,82 тыс. подписчиков
161 просмотр · 8 месяцев назад
API потоков Java был представлен в Java 8 в марте 2014 года, предоставив нам незаменимый инструмент для обработки данных.
Однако ограниченный набор промежуточных операций — filter, map, flatMap, mapMulti, distinct, sorted, peak, limit, skip, takeWhile и dropWhile — означает, что более сложные преобразования данных не могут быть выражены напрямую через API потоков.
Операции, такие как window и fold, среди многих других, отсутствуют, если посмотреть на запросы сообщества.
Вместо интеграции всех этих операций в интерфейс потоков, команда JDK разработала новый API, который, с одной стороны, используется внутри самого JDK для предоставления востребованных промежуточных операций, а с другой стороны, позволяет разработчикам реализовывать свои собственные операции.
Этот новый API называется «Stream Gatherers» и был впервые выпущен в качестве предварительной функции (JEP 461) в Java 22 в марте 2024 года, ровно через десять лет после представления API потоков. В Java 23 новый API был отправлен на второй этап предварительного тестирования без изменений (JEP 473).
В этом докладе вы узнаете в теории и на практике (включая кодирование в реальном времени), что такое Stream Gatherers и как они работают, какие Gatherers уже доступны в JDK и как эффективно их использовать, как реализовать собственные Gatherers и в чем заключаются ограничения нового API.
👉 Ссылки и слайды
https://www.happycoders.eu/stream-gat...
👉 Статья
https://www.happycoders.eu/java/strea...
👉 Репозиторий GitHub
https://github.com/SvenWoltmann/strea...
👉 Интересуетесь регулярными советами экспертов по современному Java и углубленными знаниями о JVM?
Подпишитесь на рассылку HappyCoders: https://www.happycoders.eu/newsletter/
👉 Обучение Java
https://www.happycoders.eu/java-train...
📩 Контакты
Форма обратной связи: https://www.happycoders.eu/contact/
Электронная почта: sven@happycoders.eu
(Автор: Свен Вольтманн)