На этой неделе много интересных статей о Java 9.
Вот так…
1. Весна и Ява
>> Являются ли потоки Java 8 действительно ленивыми? Не полностью! [ блог.jooq.org ]
Оказывается, Java 8 Streams API не такой ленивый, как вы могли бы подумать — операция flatmap()
жадно оценивает внутренний Stream
— чего нельзя сказать о работе со Scala или Vavr.
>> Простая настройка администратора Spring Boot [ techblog.bozho.net ]
Классная настройка панели администратора Spring Boot может быть немного неинтуитивной — вот хороший обзор того, как ее настроить.
>> Что нового в JPA 2.2 – Потоковая
передача результата выполнения запроса
[ vladmihalcea.com ]
Новое дополнение к JPA 2.2 — возврат результатов запроса в виде
потока —
интересное дополнение, но все же не такое эффективное, как разбитый на страницы ResultSet.
>> Почему следует избегать CascadeType.REMOVE для ассоциаций «ко многим» и что делать вместо этого [ мысли -на-java.org ]
Использование CascadeType.REMOVE
может быть довольно опасным — помимо создания слишком большого количества запросов , оно также может удалить больше, чем ожидалось.
Также стоит прочитать:
>> Система модульной платформы Java (JSR 376) прошла голосование по результатам публичного пересмотра [ infoq.com ]
>> Почему JVM — хороший выбор для бессерверных вычислений: Джон Чапин обсуждает AWS Lambda на QCon NY [ infoq.com ]
>> Мониторинг Docker: 5 методов мониторинга приложений Java в Docker [ blog.takipi.com ]
>> Интерфейсы командной строки Java (часть 4): командная строка [ marxsoftware.blogspot.com ]
>> Интерфейсы командной строки Java (часть 5): JewelCli [ marxsoftware.blogspot.com ]
>> Реализация пользовательского стартера Spring Boot для CXF и Swagger [ tech.asimio.net ]
Вебинары и презентации:
>> Паразитические языки программирования [ infoq.com ]
Время обновления:
>> Вышел Hibernate Validator 6.0.0.CR1 с поддержкой Bean Validation 2.0.0.CR1 [ in.relation.to ]
>> Выпущен Spring Cloud Data Flow 1.2.2 [ spring.io ]
>> Новый выпуск рекомендаций по развертыванию SSL/TLS [ blog.ivanristic.com ]
2. Технические
>> Базовый шаблон программирования: сначала фильтр, потом сопоставление [ jooq.org ]
Чтобы использовать ленивость Stream
API и снизить сложность операций, важно как можно больше полагаться на правильно установленные ограничения, хотя даже это не может привести к лени во всех сценариях .
>> ORM должны обновлять «измененные» значения, а не только «модифицированные» [ jooq.org ]
Многие ORM обновляют значения, которые были «тронуты», но не обязательно изменены, что не идеально. Прочтите всю статью, чтобы глубже погрузиться в проблему и несколько возможных решений.
3. Размышления
>> Взгляд на 5 решений NoSQL [ daedtech.com ]
Краткое и практическое введение в NoSQL и самые популярные решения.
>> Перестаньте ждать совершенства и учитесь на своих ошибках [ allthingsdistributed.com ]
Ошибки случаются, и нам нужно научиться их принимать, чтобы совершенствоваться и внедрять инновации, потому что они являются частью процесса.
Также стоит прочитать:
>> Чем AI отличается от ML [ horicky.blogspot.com ]
>> Ключ к тому, чтобы стать консультантом по программному обеспечению [ daedtech.com ]
>> Четко и ясно излагайте свои ценности и ожидания [ mehdi-khalili.com ]
>> Как из хорошего стать великим? [ ontestautomation.com ]
>> Эссенциализм для разработчиков [ blog.codecentric.de ]
>> Внештатное программирование без участия в маркетинге [ daedtech.com ]
4. Комиксы
И мои любимые Дилберты недели: