Библиотека джависта | Java, Spring, Maven, Hibernate
24.7K subscribers
1.89K photos
38 videos
42 files
2.68K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
#дайджест перед выходными

Quality Outreach Heads-up JDK 23 — начиная с JDK 23, javac требует дополнительной опции командной строки для включения обработки аннотаций

Single tenant vs multitenancy — микропосвящение в варианты подписок на облачные серверы провайдеров

Tapir Tech Update the Deep Dive — Softwaremill запускают собственный ежемесячный дайджест, посвященный новостям в мире технологий за последний месяц, а также направлениям архитектуры

Maven Central and the tragedy of the commons — Maven Central теперь будет замедлять загрузку или вовсе выдавать 429 ошибку, для особо «тяжелых» потребителей

Java on Visual Studio Code Update — обновление Java on VSCode: вынесли настройки по разным секциям; выложили новое видео, посвященное Code Coverage; появились валидации JPQL- и HQL-запросов
💁💁 Неожиданности в авторизации. Что скрывает Keycloak?

Авторизация и регистрация пользователей — важная часть приложения как для юзеров, так и для безопасности. Но какие неожиданности содержит исходный код популярного Open Source решения для авторизации, и как они могут повлиять на работу приложения?

Продолжение тут

#туториал
🤤 Жадные алгоритмы: все, что нужно знать для собеседования

Жадные алгоритмы позволяют эффективно решать определенный спектр оптимизационных задач. Однако их применение требует тщательного анализа задачи и структуры обрабатываемых данных, так как жадный подход не всегда гарантирует оптимальное решение.

В этой статье мы рассмотрим основные принципы работы жадных алгоритмов, их преимущества и недостатки, а также разберем несколько практических примеров их применения.

🔗 Читать статью
🔗 Зеркало
Объединение строк с помощью String.join

Часто возникает необходимость объединять несколько строк в одну, используя определенный разделитель.

До Java 8 это обычно делалось с помощью цикла и объекта StringBuilder. С появлением метода String.join, эта задача стала намного проще и лаконичнее.

Использование метода String.join значительно упрощает задачу объединения строк с разделителем, делая код более читаемым и сокращая количество кода, которое нужно написать и поддерживать.
✍️✍️ Переписывая историю: от инструментов версионирования БД к практике

Версионирование баз данных — это меры и процедуры для поддержания консистентности данных и схемы на протяжении всего жизненного цикла приложения. По мере изменения требований к приложению, меняются и требования к данным, и в этот момент необходимо прибегнуть к их версионированию.

Продолжение здесь

#туториал
🖥️ jadx — декомпилятор из APK в Java код

brew install jadx

jadx предоставляет инструменты командной строки и GUI для получения исходного кода Java из APK, dex, aar, aab и zip-файлов.

Также позволяет декодировать AndroidManifest.xml и другие ресурсы из resources.arsc.
Имеется встроенный деобфускатор.
Очередной #дайджест для джависта

🔵 Spring Framework 6.2.0-M4 available now — некоторые изменения: Task и ScheduledTask предоставляют метаданные о выполнении; улучшена поддержка @TestBean и @MockitoBean; @ExceptionHandler стал более гибким, поддерживает согласование контента

🔵 Tapir Tutorials — четыре видео от Adam Warski с туториалами по Tapir

🔵 OpenJDK JDK 24 Early-Access Builds — стали доступны Early-Access сборки JDK 24

🔵 Logic Circuit Simulator с Cats-Actors — Cats-Actors — это переосмысление модели actor paradigm в сочетании с функциональной парадигмой

🔵 Vaadin 24.4.1 — благодаря Copilot появилась поддержка редактирования через drag-and-drop, настройки тем, модификации и генерации кода на основе искусственного интеллекта.
Почему код выдаст ошибку?

Ответ: ключевые слова final и abstract противоположны друг другу.
🧑‍💻 Статьи для IT: как объяснять и распространять значимые идеи

Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.

Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.

Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.

👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
⚕️ Какие специалисты по Data Science требуются в медицинских проектах и что им нужно знать?

Что может быть прибыльнее, чем вести войну, торговать оружием и промышлять в даркнете? Правильно — лечить людей и продавать лекарства. Рассказываем, что нужно знать и уметь, чтобы влиться в выгодную и легальную индустрию здравоохранения.

🔗 Читать статью
🔗 Зеркало
✍️✍️ Заметки о java.util.Stream

Stream API (поток) — принципиально новый способ работы с коллекциями в Java. Вернее, так было во времена релиза Java 8 в далёком 2014 году, который принёс в классический императивный объектно-ориентированный язык программирования элементы функционального программирования. Ввиду масштаба нововведений сначала перед разработчиками стояла задача изучить новые подходы и наработать опыт их применения. После первого знакомства возник соблазн применять функциональный стиль в любой возможной ситуации, даже если в итоге получались сложные причудливые и никому не понятные конструкции. Тогда могло возникнуть обратное желание — отказаться от всех новшеств, если в них нет очевидной необходимости. В данной статье я опишу отдельные примеры использования Stream, которые кажутся мне наиболее интересными и показательными, чтобы применять Stream API эффективно, делая код лучше и избегая ошибок.

Продолжение тут

#почитать
💪💪 7 основных способов оптимизировать кеширование в Spring Boot

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

В статье вы узнаете про 7 основных техник оптимизации кеширования в Spring Boot, которые могут помочь значительно улучшить производительность. От выбора идеальных кандидатов для кеширования до реализации асинхронного кеша и мониторинга метрик кеша.

Продолжение здесь

#гайд
#дайджест перед выходными

New Leyden Early-Access Builds — сборка включает заблаговременную компиляцию методов Java, разрешение постоянных записей пула, генерацию динамических прокси-серверов и данных отражения

Virgil-Kyo — новая либа для создания Cassandra клиента на стеке Scala 3, Kyo и Magnolia

GIVEN — библиотека для автоматического обновления зависимостей в scala-проектах

New Loom Early — project Loom опубликовал новые сборки для раннего доступа с улучшенной реализацией object monitor

All Java 23 Features — Java 23 выходит только 17 сентября, но уже можно ознакомиться со списком изменений, которые будут в ней представлены
Привет, друзья! 👋

Мы готовим статью о самых раздражающих вопросах на собеседованиях и хотим узнать ваше мнение! 🤔💼

📌 Какой вопрос на собеседовании вы считаете самым бесящим или нелепым? Почему?
🎭 Как вы обычно отвечаете на вопрос «Расскажите о своих недостатках»? Поделитесь своими лайфхаками!
🚀 Какой самый неожиданный или креативный вопрос вам задавали на собеседовании? Как вы на него ответили?

Ваши ответы помогут другим кандидатам подготовиться к собеседованиям! Самые интересные истории и советы попадут в нашу статью.

Ждём ваших комментариев! 👇😊
🐛 5 признаков неопытного разработчика: как избежать типичных ошибок и ускорить профессиональный рост

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

В этой статье мы рассмотрим наиболее распространенные проблемы, с которыми сталкиваются начинающие разработчики:

🔗 Читать статью