Используйте Stream API с умом
#разработка
Недавно упоминал Stream API. Он начал пользоваться популярностью у Android-разработчиков. Как это часто бывает при появлении нового инструмента, его начали использовать во всех мыслимых и немыслимых ситуациях.
В результате код становится длиннее, сложнее для понимания и менее производительным, чем со стандартными средствами или альтернативами в Stream.
На днях прочитал статью, где автор делится примерами некорректного использования Stream API. Например:
• вместо collection.stream().forEach() , которая делает какую-то операцию для каждого элемента, лучше использовать collection.forEach();
• вместо stream.filter(condition).findFirst().isPresent() удобнее и короче использовать stream.anyMatch(condition);
• заменить stream.sorted(comparator).findFirst() нужно на stream.min(comparator).
Помните о том, что любые инструменты, насколько бы они ни были хорошие, нужно использовать грамотно.
#разработка
Недавно упоминал Stream API. Он начал пользоваться популярностью у Android-разработчиков. Как это часто бывает при появлении нового инструмента, его начали использовать во всех мыслимых и немыслимых ситуациях.
В результате код становится длиннее, сложнее для понимания и менее производительным, чем со стандартными средствами или альтернативами в Stream.
На днях прочитал статью, где автор делится примерами некорректного использования Stream API. Например:
• вместо collection.stream().forEach() , которая делает какую-то операцию для каждого элемента, лучше использовать collection.forEach();
• вместо stream.filter(condition).findFirst().isPresent() удобнее и короче использовать stream.anyMatch(condition);
• заменить stream.sorted(comparator).findFirst() нужно на stream.min(comparator).
Помните о том, что любые инструменты, насколько бы они ни были хорошие, нужно использовать грамотно.