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

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

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

По рекламе: @proglib_adv
Прайс: @proglib_advertising
Download Telegram
☸️ Покоряем Kubernetes: от базовых концепций к эффективному управлению контейнерами

Умение работать с Kubernetes — ценный навык для продвинутого разработчика, и совершенно необходимый — для каждого DevOps-инженера. Расскажем просто и понятно, как разобраться в основных концепциях Kubernetes.

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

#гайд
🗺️ Где составить дорожную карту: ТОП-10 сервисов

Сервисы, которые подойдут для составления карьерной карты и не только.

Подборка материалов по теме:
🧪 Дорожная карта тестировщика в 2023 году
🛣️ Дорожная карта: что это, как ее составить и почему она обязательно нужна разработчику
Дорожная карта Java-разработчика в 2023 году

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

#гайд
Плавный переход с Java 11 на Java 21: пошаговое руководство для разработчиков

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


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

#гайд
🤖🤖 Стейт-машины: The Good, The Bad and The Ugly

Автор расскажет, как запускались промокоды для студентов, а заодно научились проектировать и писать стейт-машины, и поделится, в каких ситуациях такое решение точно не подойдёт.

Читать

#гайд
🤔🤔 Как создать свой сборщик проектов

Автор делится опытом написания проекта, описывает с какими проблемами пришлось столкнуться, рассказывает о причинах принятия технических решений, примеры использования шаблонов проектирования. При этом фокус делает на том, каким проект получился в итоге.

Статья направлена на пока еще не очень опытных инженеров, которые хотят познакомиться с проектом сложнее Hello world на Spring Boot и узнать что-то новое в процессе.

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

#гайд
💁💁 Как начать писать на Java в VSCode

Подавляющее большинство пишет Java код, используя JetBrains IntelliJ IDEA Ultimate. Да, это отличная IDE. Для нее есть большое количество расширений, среда очень тесно интегрируется с Spring Framework и знает его особенности.

В какой‑то мере все Java‑разработчики стали заложниками IDEA. Она так привычна, что нет желания пробовать другое. Ведь всё такое удобное и знакомое за столько лет использования.

Но если у вас есть трудности с доступом к Ultimate версии, а Community вариант не достаточно функционален — самое время попробовать современную альтернативу — Visual Studio Code.

В статье автор делится опытом подготовки среды разработки и изучения вопроса: «А можно ли перейти на VSCode?».

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

#гайд
🧑‍🎓🧑‍🎓 Hazelcast: эксперименты с настройкой и долговременным хранением больших объектов in-memory

Статья будет полезна для тех, кто поддерживает приложения на Java, так как большая ее часть посвящена анализу работы G1 GC, знакомству с соответствующими инструментами и особенностями тюнинга GC, в частности для очень больших heap`ов. А также тем, кто пытается разобраться, на что способен Hazelcast, и для чего его можно применить.

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

#гайд
😎😎 Как распознать текст, написанный искусственным интеллектом: основные признаки

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

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

#гайд
🧑‍🎓🧑‍🎓 Amplicode: учим IDE говорить на языке фреймворка

Amplicode — это коллекция инструментов, работающих на основе IntelliJ IDEA Community, Ultimate и VS Code. Amplicode учит вашу IDE говорить и думать на языке библиотек и фреймворков — Spring Boot, JPA, Docker, Kafka, Liquibase, MapStruct, StoryBook, ReactAdmin. Все эти инструменты объединены общими принципами, что гарантирует быстрое погружение и удобную работу, несмотря на обилие функций. В результате вы пишете «обслуживающий» код быстрее, эффективнее и качественнее. Как это работает, рассказывают в статье

#гайд
💁💁 Создание дистрибутивов для разных операционных систем в Java 21 и 22

Статья рассказывает о построении дистрибутивов приложений для операционных систем Windows, macOS и Linux в случае использования Java 21 и 22.

Инструменты, позволяющие выполнять компиляцию, сборку, создание цифровой подписи и дистрибутивов Java-приложений, впервые появились в JDK 7 Update 6. Первоначально они предназначались в первую очередь для JavaFX-приложений и были доступны в виде утилиты командной строки javafxpackager и в виде задач (tasks) для Ant. В официальной документации задачи для Ant имеют наименование JavaFX Ant Tasks

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

#гайд
💥💥 Блеск и нищета нового Scrolling API в Spring Data

В Spring Data 3.1 появилось новое API для итерирования по большому объему данных: Scrolling API. В статье посмотрите на практические применения с примерами кода и преимущества по сравнению со всем известным Pageable. А также будет разбор, чего Scrolling API пока не хватает, и можно ли его вообще брать в свои проекты. Если хотите выяснить, как с новым API в теории ускорить пагинацию больших данных — читайте далее

#гайд
🚶🚶 Lazy Loading в Java

Вы когда-нибудь замечали, как котики, лениво потягиваясь и сворачиваясь клубком, экономят энергию и действуют только тогда, когда это действительно необходимо?

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

Читать далее

#гайд
🤔🤔 Как сделать пароль менеджер

Для хранения паролей будет использоваться файл формата xml, который будет шифроваться методом AES-256 и храниться в облаке. В качестве облака был выбран сервис «Яндекс диск».

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

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

#гайд
💥💥 Как шаблонный метод может сломать ваш Java код

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

Читать

#гайд
🚧🚧 От логов к аудиту

В статье коротко рассмотрены различия между обычными логами и аудит-логами. Основное внимание уделено реализации аудит-логирования в Java, включая использование аннотаций и АОП, приведен пример настройки роутинга логов через rsyslog.

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

#гайд
💪💪 Пишем кастомный Plugin SonarQube

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

Подробности тут

#гайд
🚧🚧 Тестирование асинхронного контракта Spring Boot приложения (Kafka Consumer+Producer)

Как написать интеграционный\сервисный\авто тест для Spring Boot приложения, которое взаимодействует с внешним миром исключительно с помощью Kafka. Сначала автор разбирает проблему, а затем поэтапно развивает тесты, чтобы привести их к состоянию defenition-of-done.

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

#гайд
🤷🤷 Умножение Монтгомери

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

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

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

#гайд