#stream_api — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #stream_api, aggregated by home.social.
-
Stream API против Flux: 99% Java-разработчиков не знают эту разницу
Когда я выбираю тему для исследования, я думаю о пользе для специалиста, особенно для тех, кто недавно в профессии. Однако, если ты опытный специалист и постоянно используешь стримы в своей работе, возможно даже для тебя будет изюминка, ради которой тебе стоит прочитать статью. Я подпишу блок для тебя как ИЗЮМИНКА Захотелось рассмотреть важную тему Stream API, но чтобы сделать статью интереснее, я решил сравнить его с инструментами реактивного программирования — Flux и Mono из Project Reactor. Начнём с того, что такое Stream и в чём его схожесть с Flux.
-
[Перевод] Когда использовать параллельный стрим в Java
Параллельные стримы в Java 8 выглядят как бесплатное ускорение: добавил .parallel() — и все ядра побежали работать. Но по факту всё сложнее, так как распараллеливание имеет накладные расходы, зависит от того, насколько хорошо делится источник данных, сколько стоит объединение результатов, и даже от локальности данных в памяти. В новом переводе от команды Spring АйО на примерах и бенчмарках разберем, почему простая свёртка на маленьких диапазонах может стать медленнее , почему ArrayList часто выигрывает у LinkedList в параллели, как reduce может неожиданно сломаться из-за неверного identity , и что вообще происходит внутри common ForkJoinPool .
https://habr.com/ru/companies/spring_aio/articles/1005180/
#java #kotlin #stream #stream_api #streams #jvm #performance
-
Вредные советы Java: просто используй Parellel Stream
Stream'ы в java явление давно не новое. Старая добрая Java 8 появилась на свет более 10 лет назад. С появлением Stream API жизнь стала проще и веселее. Но есть в Stream API два гадких утёнка: Stream#close и Stream#parallel. С первым все достаточное просто — если не уверен в источнике откуда берется Stream — то он может быть вполне себе ресурсом и требовать try‑with‑resources (привет java.nio.file.Files#list ). Cо вторым куда веселее...
-
Стримы в Java: Как перестать бояться и полюбить filter-map-reduce (Часть 2)
В первой части мы поговорили про основы Stream API и убедились, как элегантно можно обрабатывать данные, используя цепочки операций. Но возможности на этом не ограничиваются. Пришло время подняться на новый уровень и посмотреть, что случается, когда добавляется параллельность. Как работают параллельные стримы под капотом? Чем они отличаются от ручного управления потоками? А как же всемогущий Spring и необычная RxJava? Именно об этом и пойдёт речь во второй части.
https://habr.com/ru/articles/885834/
#java #stream #stream_api #spring #spring_data #rxjava #reactive_streams #filter #map #reduce
-
Стримы в Java: Как перестать бояться и полюбить filter-map-reduce (Часть 2)
В первой части мы поговорили про основы Stream API и убедились, как элегантно можно обрабатывать данные, используя цепочки операций. Но возможности на этом не ограничиваются. Пришло время подняться на новый уровень и посмотреть, что случается, когда добавляется параллельность. Как работают параллельные стримы под капотом? Чем они отличаются от ручного управления потоками? А как же всемогущий Spring и необычная RxJava? Именно об этом и пойдёт речь во второй части.
https://habr.com/ru/articles/885834/
#java #stream #stream_api #spring #spring_data #rxjava #reactive_streams #filter #map #reduce
-
Стримы в Java: Как перестать бояться и полюбить filter-map-reduce (Часть 2)
В первой части мы поговорили про основы Stream API и убедились, как элегантно можно обрабатывать данные, используя цепочки операций. Но возможности на этом не ограничиваются. Пришло время подняться на новый уровень и посмотреть, что случается, когда добавляется параллельность. Как работают параллельные стримы под капотом? Чем они отличаются от ручного управления потоками? А как же всемогущий Spring и необычная RxJava? Именно об этом и пойдёт речь во второй части.
https://habr.com/ru/articles/885834/
#java #stream #stream_api #spring #spring_data #rxjava #reactive_streams #filter #map #reduce
-
Стримы в Java: Как перестать бояться и полюбить filter-map-reduce (Часть 2)
В первой части мы поговорили про основы Stream API и убедились, как элегантно можно обрабатывать данные, используя цепочки операций. Но возможности на этом не ограничиваются. Пришло время подняться на новый уровень и посмотреть, что случается, когда добавляется параллельность. Как работают параллельные стримы под капотом? Чем они отличаются от ручного управления потоками? А как же всемогущий Spring и необычная RxJava? Именно об этом и пойдёт речь во второй части.
https://habr.com/ru/articles/885834/
#java #stream #stream_api #spring #spring_data #rxjava #reactive_streams #filter #map #reduce
-
Стримы в Java: Как перестать бояться и полюбить filter-map-reduce
Когда-то я считал, что священный грааль итераций — это старый добрый цикл for . Да, тот самый, с индексами, который шагал по массивам как бравый солдат по полю. Я обожал мои циклы и охотно избегал всего, что могло их заменить. Но потом появился он — Stream API . Новомодный, загадочный, пугающий, словно неведомый зверь из функционального леса. И вот я, стоя по колено в коде, задумался: "Как перестать бояться и полюбить filter-map-reduce?"
-
[Перевод] Еще раз о перформансе стримов в Java
Перевод статьи, где автор замеряет перформанс Stream API в Java на около-реалистичных (и не очень) задачах. Как и автору, мне нередко на глаза попадаются заявления что мол вся эта функциональщина в джаве - баловство и скорее вредный сахар. И что старовер с джавы 1.6 напишет на циклах заведомо более быстрый код, чем хипстер на стримах. Также в статье наглядно демонстрируется, в каких именно условиях параллельные стримы могут начать приносить пользу.
https://habr.com/ru/articles/807647/
#java #stream_api #функциональное_программирование #производительность #перформанс
-
[Перевод] Еще раз о перформансе стримов в Java
Перевод статьи, где автор замеряет перформанс Stream API в Java на около-реалистичных (и не очень) задачах. Как и автору, мне нередко на глаза попадаются заявления что мол вся эта функциональщина в джаве - баловство и скорее вредный сахар. И что старовер с джавы 1.6 напишет на циклах заведомо более быстрый код, чем хипстер на стримах. Также в статье наглядно демонстрируется, в каких именно условиях параллельные стримы могут начать приносить пользу.
https://habr.com/ru/articles/807647/
#java #stream_api #функциональное_программирование #производительность #перформанс
-
[Перевод] Еще раз о перформансе стримов в Java
Перевод статьи, где автор замеряет перформанс Stream API в Java на около-реалистичных (и не очень) задачах. Как и автору, мне нередко на глаза попадаются заявления что мол вся эта функциональщина в джаве - баловство и скорее вредный сахар. И что старовер с джавы 1.6 напишет на циклах заведомо более быстрый код, чем хипстер на стримах. Также в статье наглядно демонстрируется, в каких именно условиях параллельные стримы могут начать приносить пользу.
https://habr.com/ru/articles/807647/
#java #stream_api #функциональное_программирование #производительность #перформанс