Библиотека джависта | Java, Spring, Maven, Hibernate
25.6K subscribers
1.44K photos
31 videos
36 files
2.31K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://t.me/proglibrary/9197
Учиться у нас: https://proglib.io/w/778f3dba

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv
Прайс: @proglib_advertising
Download Telegram
Очередной #дайджест для джавистов

🔴 Когда интеграция баз данных превосходит микросервисы — автор предлагает несколько вариантов архитектуры, подробно рассматривая микросервисную архитектуру и подход интеграции через БД

🔴 JEP 463: Неявно объявленные классы и основные методы экземпляра — JEP содержит изменения правил для неявного объявления классов в исходных файлах и процедуры выбора основного метода для вызова

🔴 Почему Effect важнее, чем ZIO — рассказывает о том, как фреймворк Effect связан с ZIO

🔴 Освоение Enum в Java — руководство для разработчиков

🔴 sbt-buildinfo 0.12.0 — плагин для генерации объекта, описывающего текущий sbt-билд проекта, обзавелся поддержкой Scala 3
Очередной #дайджест для джависта

🔹 Spring предлагает бесплатный доступ к контенту Spring Academy Pro — платная подписка для профессионального контента Spring Academy больше не требуется, а новый контент продолжит появляться

🔹 Capture Checking in Scala 3.4 — автор рассказывает, как усиленно разрабатываемый capture checking поможет сделать менеджмент ресурсов еще более безопасным

🔹 GraalVM for JDK 22 Community 22.0.1 — релиз GraalVM для JDK 22 Community 22.0.1 от Oracle Labs содержит исправления на основе критического обновления от Oracle за апрель 2024 года

🔹 Повышение производительности разработчиков с помощью IntelliJ IDEA — туториал по возможностям Intelij IDEA. Отлично подойдет для новичков

🔹 JEP draft: обработка исключений в switch — драфт JEP, посвященный обработке исключений в switch. Основная мотивация — сделать менее громоздкой конструкцию switch, обернутую в try-catch
#дайджест перед выходными

⬆️ Micronaut framework 4.4.0 Released — в ней есть улучшения в Micronaut Core, новый модуль, Micronaut OpenSearch, интеграция с OpenSearch, обновление зависимостей до Kotlin 1.9.23 и обновления многих модулей Micronaut

⬆️ Вышел PMD 7 — статический анализатор кода для Java, а теперь еще и для Kotlin

⬆️ Mocking Libraries can be your doom — о том, что такое мокирование в тестах и как мокировать правильно

⬆️ Update on String Templates (JEP 459) — String Templates, находящиеся в Java 22 в статусе second preview, отправляются на редизайн и не будут доступны в JDK23, даже с флагом –enable-preview

⬆️ Гайд по JDK Flight Recorder — что это за инструмент и зачем он нужен, как анализировать записи, как определять свои кастомные события и даже как их использовать в юнит-тестах
Очередной #дайджест для джавистов

➡️ sbt 2.x удаленный кэш с поддержкой Bazel — о том, как интегрироваться с этим интерфейсом и использовать часть эндпоинтов для решения своей задачи

➡️ Iris — интерактивный конфигуратор темы для Linux-а, написанный на Scala 3 — в терминале пишем java -jar iris-java.jar и пред вами предстает TUI-меню с выбором темы

➡️ Быстрее, выше, сильнее — оптимизируем Spring-контекст для тестов

➡️ Что нового в JMC 9 — в статье рассказывается, что нового в 9-й версии

➡️ JOOQ. Введение — техническое и философское осмысление библиотеки для взаимодействия с базой данных JOOQ
#дайджест перед выходными

🔴 Декомпозиция — ваша суперсила. На примере сложной задачи разберетесь, как подойти к ней учитывая будущую поддержку и расширение возможностей

🔴 Вышла альфа мажорной версии Hibernate 7.0.0.Alpha1. Jakarta Persistence 3.2, минимальная версия Java теперь 17, миграция с Hibernate Commons Annotations на Hibernate Models и гайд по миграции

🔴 JEP draft: Exception handling in switch. Драфт JEP, посвященный обработке исключений в switch. Основная мотивация — сделать менее громоздкой конструкцию switch, обернутую в try-catch

🔴 Java Frameworks, которые необходимо знать. В посте обзор инструментов (да, там не только фреймворки), которые стоит освоить современному Java-разработчику

🔴 Обеспечение правильного использования новых функций Java 21. Советы в основном посвящены новым API, виртуальным потокам и switch-ам
Очередной #дайджест для джавистов

🔻 zio 2.1.1 — выпустили первый серьезный релиз после 2.0.X-версий. Прокачали рантайм, сломали совместимость по части автоотслеживания blocking-операций

🔻 JPoint 2024 — 17 апреля прошла онлайн-часть JPoint 2024, а 24 и 25 — офлайн. Презентации всех докладов уже доступны для свободного просмотра

🔻 Как работать с Apache Kafka в Spring Boot — обзорная статья про Kafka. Верхнеуровнево рассмотрена архитектура, основные компоненты системы и API. Есть пример использования из SpringBoot-приложения

🔻 Настройка ZIO для достижения высокой производительности — статья от текущего мейнтейнера zio о том, как тюнить performance zio-приложения. Минимум воды, максимум полезных и малоизвестных трюков с фреймворком

🔻 Интересные факты о потоках и коллекциях Java — небольшая статья с кучей примеров и интересными фактами о стримах и коллекциях, превью фичи java 22, специальные коллекции для Enum и не только
#дайджест перед выходными

✳️ JEP 473: Stream Gatherers (Second Preview) — JEP нужен для поддержки пользовательских промежуточных операций в Stream API

✳️ Java Withers — Inside Java Newscast — новое ключевое слово with позволит лаконично выразить в коде инструкцию о создании копии record-а, и помимо устранения бойлерплейта, эта фича также открывает еще несколько интересных возможностей

✳️ Spring Framework 6.2.0-M1 — небольшая заметка, где описываются фичи Spring 6.2.0: фоновая инициализация бинов, fallback-бины, интеграция MockMvc с AssertJ

✳️ Getting started with bld — новый инструмент сборки проекта, который фокусируется на простоте и предоставляет конфигурацию на чистой Java

✳️ Make Invalid States Unrepresentable — от наиболее нетипизированного представления любых данных в виде String до newtype и refined
Очередной #дайджест для джавистов

🔸 A preview of Jakarta Data 1.0 — введение и знакомство с основными аннотациями и автогенерируемыми запросами, а еще с написанием собственных запросов через аннотацию @Query

🔸 JEP 469: Vector API (Eighth Incubator) — Vector API продолжает бить рекорды и уходит в восьмой раз в инкубатор в Java 23

🔸 Как создавать приложения с AI на Scala 3 и Besom — проект, демонстрирующий, казалось бы, все извращенные способы использования Scala 3, в том числе и развертывание самого приложения в облаке, с помощью Besom

🔸 Direct-style Effects Explained — статья о том, как Scala 3 продолжает развиваться в сторону еще большей типобезопасности и local reasoning

🔸 Уязвимость в плагине JetBrains GitHub — была обнаружена новая проблема безопасности, затрагивающая плагин JetBrains GitHub, потенциально приводящая к раскрытию токенов доступа сторонним сайтам
#дайджест перед выходными

JEP 477 в качестве Preview направлен в Java 23.— улучшение позволяет писать упрощенные декларации для программ, состоящих из метода main, которые могут быть расширены по мере роста навыков

Как создать библиотеку OSS — запись прямого эфира в рамках Zymposium, в котором можно было предложить идею новой ZIO-библиотеки и начать имплементировать ее в режиме лайф-кодинга

Вышел Kotlin 2.0 — центральный элемент новой мажорной версии — новый компилятор K2, который в значительной степени ориентирован на мультиплатформенность

Что нового в IntelliJ IDEA Ultimate 2024.1 — завезли кучу небольших апдейтов

Разбираем магических зверей безопасности: AuthZ: abac/rbac, AuthN и 2FA — еще одна попытка объяснить разницу между этими совершенно разными вещами
Очередной #дайджест по Java

1️⃣ Новый пакет scala-repl в MELPA для разработчиков Scala — расширение Emacs для интерактивной работы с sbt/mill/scala-cli-проектами

2️⃣ JEP 482: Flexible Constructor Bodies направлен в JDK 23 в статусе second preview — при переходе в статус second preview его переименовали и теперь поля класса можно инициализировать до того, как будет вызван super()

3️⃣ sbt Android plugin — плагин с функциональностью sbt для разработки приложений под платформу Android

4️⃣ Опыт разработки сервиса отправки сообщений в Apache Kafka с использованием SASL/Kerberos и Avro Schema Registry — опыт создания сервиса для отправки сообщений в Apache Kafka с использованием Spring Boot, аутентификацией SASL/Kerberos и применением Avro Schema Registry для продюсера

5️⃣ SBOM support in Spring Boot 3.3 — SBOM описывает компоненты, которые использует ваша система, это может быть полезным, например, для автоматизированного составления списков уязвимостей вашей программы