uz
Feedback
Java guru

Java guru

Kanalga Telegram’da o‘tish

Новости из мира Java, обзоры интересных библиотек и фреймворков, обучающие статьи. Онлайн обсуждения актуальных тем и обмен опытом. Для связи @RodmanDV

Ko'proq ko'rsatish
941
Obunachilar
Ma'lumot yo'q24 soatlar
+37 kunlar
+530 kunlar
Postlar arxiv
MyBatis «на минималках» Я не фанат этого фреймворка, но для кругозора посмотреть можно. Исходя из статьи в CDEK он используется в большинстве проектов. Лично я давно не слышал о его использовании в ПРОМе. https://habr.com/ru/companies/cdek_blog/articles/771714/

Maven плагин для проверки семантической схемы версионирования Java-библиотек. Возможно вы тоже сталкивались с тем, что патч-версия якобы содержит обратно несовместимые изменения. Автор написал maven-плагин, который автоматически проверяет внесенные изменения и предлагает, какую часть номера версии нужно изменить. https://foojay.io/today/semantic-versioning-your-java-libraries/

Как подружить нейросети и разработку: программируем с ChatGPT Задача: создать простой REST-сервис на Java (с использованием Spring Boot и JPA) без написания кода. Технологии: ChatGPT 3.5 + JAIG. Итог: если бы автор статьи самостоятельно, вручную писал код, то по его оценке уложился примерно в один рабочий день. На работу с ChatGPT и JAIG у него ушло в общей сложности 10 дней 🤡 https://habr.com/ru/companies/ibs/articles/792032/

Как мы начали использовать виртуальные потоки Java 21 и на раз-два получили дедлок в TPC-C для PostgreSQL В этом посте рассказано о примере дедлока в TPC-C для PostgreSQL, причиной которого является исключительно переход на виртуальные потоки - и никаких проблем обедающих философов )) https://habr.com/ru/companies/ydb/articles/786550/

Разбираемся с «MavenGate», новой атакой на цепочку поставок для Java и Android-приложений Ей подверженны более 18% всех Java-библиотек. Суть ее основана на логике работы сборщиков Java/Android-проектов и разрозненности репозиториев, которые хранят эти библиотеки. https://habr.com/ru/companies/swordfish_security/articles/790544/

Машинное обучение для Java разработчиков: конвейеры данных машинного обучения В статье описано как создать и развернуть модель данных машинного обучения в ПРОМ среде на базе Java с использованием Weka, Docker и REST. Weka представляет собой набор современных алгоритмов машинного обучения и инструментов предварительной обработки данных. https://www.infoworld.com/article/3454363/machine-learning-for-java-developers-machine-learning-data-pipelines.html#tk.rss_java

Туториал по нотификациям через RSocket: от концепции до запуска в продакшн Статья про разработку системы нотификаций для Альфа-Онлайн — мобильного банка в вебе. В решении использовались WebSocket в связке с RSocket. https://habr.com/ru/companies/alfa/articles/788398/

Как сократить потребление памяти в интеграционных тестах с Kafka с помощью GraalVM Довольно интересный опыт описан в статье по созданию нативного образа для EmbeddedKafka с использованием GraalVM. В теории можно поэкспериментировать подобным образом и с другими продуктами. https://habr.com/ru/articles/788812/

Oh My Git — интерактивная игра для изучения Git. Она визуализирует внутреннюю структуру Git-репозиториев в режиме реального времени. Получается очень наглядно. https://ohmygit.org

Планы Oracle по улучшению Java на 2024 год Рассказано о том какие улучшения запланированы в таких проектах OpenJDK как Amber, Babylon, Leyden, Lilliput, Loom, Panama, Valhalla и на сколько жизнь разработчика станет прекрасна. https://inside.java/2024/01/18/newscast-61/

11 reasons the new Java is not like the old Java Хорошее овервью ключевых новых технологий без глубокого погружения в каждую. Рассмотрены: 1 Virtual threads 2 Structured concurrency 3 Immutable data 4 Garbage collection 5 Pattern matching 6 Streamlined syntax 7 Sealed classes 8 Foreign functions and memory 9 The Vector API 10 Improved null processing https://www.infoworld.com/article/3711866/11-reasons-the-new-java-is-not-like-the-old-java.html#tk.rss_java

Project Loom. Не только виртуальные потоки В статье мало «технического мяса», но она больше интересна комментариями под ней. Там идет дискуссия в которой сравнивают корутины Java и Kotlin. В самой статье по факту рекламируется инструмент автора построенный вокруг непубличного API из JDK
jdk.internal.vm.Continuation
https://habr.com/ru/articles/785334/

Virtual Threads for Lightweight Concurrency and Other JVM Enhancements Статья Рона Пресслера, который является архитектором в Oracle Java Platform Group, а также тех лидом проекта Loom в Oracle. По ссылке есть видео выступления, а ниже транскрипт для тех кто любит читать. Очень интересное выступление. Рекомендую посмотреть. https://www.infoq.com/presentations/virtual-threads-lightweight-concurrency/

String Templates in Java – why should you care? Шаблоны строк это preview feature, которая впервые была представлена в Java 21. Она существенно упростит конкантенацию строк, а также повысит безопасность. В статье детально разбирается какие альтернативы у нас были до этой фичи и как она нам поможет в типовых кейсах. https://blog.jetbrains.com/idea/2023/11/string-templates-in-java-why-should-you-care/

Class Data Sharing (CDS) в Spring 6.1. Довольно интересная фича появилась начиная с Spring Framework 6.1. Class Data Sharing (CDS) позволяет сократить время старта приложения и потребляемую память за счет кеширования метаданных классов. Технически можно кешировать метаданные и прикладных классов. https://spring.io/blog/2023/12/04/cds-with-spring-framework-6-1/

JDK 21: The GCs keep getting better. Статья про улучшение производительности сборки мусора в JDK 21 по сравнению с JDK 8. Сравнение делается бенчмарком SPECjbb® 20151 для демонстрации прироста производительности и обсуждает влияние новых фич. https://kstefanj.github.io/2023/12/13/jdk-21-the-gcs-keep-getting-better.html

Создание и использование BOM в Gradle Бывает так, что две библиотеки, например X и Y, требуют разные версии одной и той же транзитивной зависимости Z (snakeyaml, Google Guava, Apache Commons и т.п.). Такая ситуация называется конфликтом (или jar hell, когда это происходит в большом количестве). В Maven разрешение конфликтов происходит не так как в Gradle. В нем по дефолту выбирается самая «свежая» версия из конфликтующих зависимостей. Для быстрой проверки там есть удобная команда ./gradlew dependencyInsight --dependency org.yaml:snakeyaml https://habr.com/ru/articles/784784/

JWT-аутентификация при помощи Spring Boot 3 и Spring Security 6 Новая версия, Spring Security 6, изменяет некоторые базовые реализации, а русскоязычных материалов на эту тему очень мало. В этой статье мы рассмотрим JWT-аутентификацию и авторизацию с помощью Spring Boot 3 и Spring Security 6, чтобы помочь начинающем разработчикам разобраться и начать пользоваться базовым функционалом этой библиотеки. Цель статьи - показать, как использовать JWT-аутентификацию с API-интерфейсами. Будет разобрано как базовое использование, так и ролевая модель. https://habr.com/ru/articles/784508/

ChatGPT на Java. Пишем «Hello World» на Spring AI Spring AI предлагает абстракции в виде функциональных интерфейсов, благодаря которым можно быстро и с разными параметрами вызывать нейронки. Основа - это ChatClient с имплементациями для OpenAI и Azure. https://habr.com/ru/articles/784128/

Поздравляю всех с Новым Годом! Желаю исполнения всех ваших желаний и большого здоровья! Пусть ваш код всегда компилируется с первого раза и не содержит багов )))