Чашечка Java
8.57K subscribers
3.88K photos
13 videos
56 files
6.33K links
Лучшие материалы по Java на русском и английском

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels
Download Telegram
JDBC Fetch Size: Маленькая настройка, большие последствия

В новом переводе от команды Spring АйО Гевин Кинг, создатель Hibernate, объясняет, почему значение fetch size по умолчанию в драйвере Oracle может замедлять запросы — и как его изменение помогает повысить масштабируемость системы.


Читать: https://habr.com/ru/companies/spring_aio/articles/878194/?utm_campaign=878194

@a_cup_of_java | Другие наши каналы
👍2
WireMock: Легкий путь к эффективному тестированию

Привет, меня зовут Иван, и я зануда.

Сразу скажу, что в моем понимании зануда в тестировании — не тот человек, который всех достал и которого все хотят удушить, а тот, который умеет показать людям, что нужно делать хорошо и не делать плохо, и добиться от них этого. Я считаю, что QA должно расшифровываться как Quality Assistant. Это даже не про Assurance, когда вы обеспечиваете качество, это именно про то, что вы как тестировщик и участник команды помогаете на каждом этапе от требований до выкатки в прод и работы с сопровождением и вашими коллегами добиться того, чтобы каждый этап проходил все лучше и лучше.

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

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


Читать: https://habr.com/ru/companies/beeline_tech/articles/878368/?utm_campaign=878368

@a_cup_of_java | Другие наши каналы
👍5👏21
JetBrains AI Coding Agent Junie Provides Tight Integration with JetBrains IDEs

JetBrains has announced Junie, its new AI coding agent, in closed preview. Junie, says the company, is able to carry through the coding tasks you assign it and leverage the knowledge about your project context as available in the IDE.
By Sergio De Simone

Read: https://www.infoq.com/news/2025/01/jetbrains-junie-agent/

@a_cup_of_java | Другие наши каналы
IntelliJ IDEA 2025.1 EAP 3

Команда Spring АйО перевела статью от JetBrains про релиз третей версии EAP для IntelliJ IDEA 2025.1.

Среди нововведений: обновления режима Kotlin K2, улучшенное логическое представление в панели Structure и автодополнение для несуществующих репозиториев Spring Data.


Читать: https://habr.com/ru/companies/spring_aio/articles/878530/?utm_campaign=878530

@a_cup_of_java | Другие наши каналы
4👍3👎1
Заговор разработчиков против корпораций: архитектура и принципы

С момента написания предыдущей статьи я находился под пристальным вниманием. Попытка опубликовать материалы на англоязычных платформах обернулась фиаско — в первые же минуты легионы последователей тайного братства обрушились с критикой:

— Нет никакой организации! — вопили они.

Подозреваю, что слежка велась через мой телеграм-канал.

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

Читать: https://habr.com/ru/articles/878620/?utm_campaign=878620

@a_cup_of_java | Другие наши каналы
Гарантированное получение данных через REST API: Подходы и библиотеки для Java

Как реализовать надежное взаимодействие с API в Java. Примеры кода, механизм retry и рекомендации для повышения отказоустойчивости системы

Читать: «Гарантированное получение данных через REST API: Подходы и библиотеки для Java»

@a_cup_of_java | Другие наши каналы
👍3
Альтернатива Keycloak: как настроить SSO в Authentik

Привет, Хабр!

Не так давно передо мной встала задача настроить единый вход (SSO) в наше приложение, и так исторически сложилось, что в компании для этого используют open‑source‑провайдер аутентификации authentik.

Первым делом я, конечно, полез в официальную документацию провайдера, но, к сожалению, не нашел там каких‑то подробных гайдов или туториалов по настройке. Дальше я, само собой, решил погуглить — нашел статьи по запуску authentik, а вот более‑менее подробного туториала, как все это заставить работать, используя наш стек (Java, Spring Boot), не оказалось. Поэтому я решил сделать его сам.

В статье разберем шаги для простейшей настройки authentik и запустим его в связке с Spring Boot приложением.


Читать: https://habr.com/ru/articles/878802/?utm_campaign=878802

@a_cup_of_java | Другие наши каналы
👍2
ТОП лучших курсов Django: обучение с нуля

Полный список лучших онлайн-курсов Django: освоить веб-разработку с одним из самых мощных фреймворков Python. Сравнение предложений с ценами, оценки и отзывы

Читать: «ТОП лучших курсов Django: обучение с нуля»

@a_cup_of_java | Другие наши каналы
🎉2
Разработчик с опытом объяснил, почему новички тонут в туториалах, а не в знаниях

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

Читать: «Разработчик с опытом объяснил, почему новички тонут в туториалах, а не в знаниях»

@a_cup_of_java | Другие наши каналы
👏3
Пойдём в нейросети вместе со мной

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

Но как насчёт нейросети на jave реализованной без использования матриц? Просто нейроны. Просто связанные между собой.

И что если я скажу тебе, что скорость работы этих двух подходов примерно сравнима между собой?


Читать: https://habr.com/ru/articles/878902/?utm_campaign=878902

@a_cup_of_java | Другие наши каналы
🔥3
Debezium Joins the Commonhaus Foundation

The Debezium project recently completed its move to the Commonhaus Foundation after consulting with the Debezium community and Red Hat, who exclusively sponsored the project since the start in 2015.
By Johan Janssen

Read: https://www.infoq.com/news/2025/02/debezium-joins-commonhaus/

@a_cup_of_java | Другие наши каналы
👏2
Топовые инструменты для фронтенд-разработки в 2025 году

Инструменты для фронтенд-разработки. Показываем актуальный инструментарий для frontend в 2025 году. Рассматриваем тренды для фронтендеров Tproger

Читать: «Топовые инструменты для фронтенд-разработки в 2025 году»

@a_cup_of_java | Другие наши каналы
Путеводитель по техническим транзакциям с Camunda 8 и Spring

Интересно, как работают технические транзакции с Camunda и фреймворком Spring? Узнайте больше о транзакционном поведении в этом посте.


Читать: https://habr.com/ru/articles/879026/?utm_campaign=879026

@a_cup_of_java | Другие наши каналы
🥰1
Java News Roundup: Java Operator SDK 5.0, Open Liberty, Quarkus MCP, Vert.x, JBang, TornadoVM

This week's Java roundup for January 27th, 2025 features news highlighting: the GA release of Java Operator SDK 5.0; the January 2025 release of Open Liberty; an implementation of Model Context Protocol in Quarkus; the fourth milestone release of Vert.x 5.0; and point releases of JBang 0.123.0 and TornadoVM 1.0.10.
By Michael Redlich

Read: https://www.infoq.com/news/2025/02/java-news-roundup-jan27-2025/

@a_cup_of_java | Другие наши каналы
🎉2
Мне 34, я был в 67 странах, и у меня есть для вас лайфхак (часть 2)

Два месяца назад я написал Телеграм-бот, который помогает мне выхватывать дешёвые авиабилеты (и нет, это не рекламная интеграция). Я прикрутил Python-интеграцию к Telegram по протоколу для клиентов, чтобы читать сообщения из любых публичных групп, к backend-части на Spring — она позволяет через бота подписываться на эти группы и настраивать, какие сообщения выхватывать для вас.

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

Я реанимировал бот, добавил несколько киллер-фичей и готов поделиться с вами всеми наработками. В статье найдёте код, ссылки на бот и примеры, как другие пользователи ищут через бот скидки на айфоны и много чего ещё.


Читать: https://habr.com/ru/companies/alfa/articles/876776/?utm_campaign=876776

@a_cup_of_java | Другие наши каналы
👎3🦄1
Event loop для чайников: простыми словами о сложном механизме браузера

Event Loop — это сердце асинхронности в JavaScript. В этой статье простыми словами разберем, как работает цикл событий в браузере, что такое макрозадачи и микрозадачи, и как они влияют на выполнение кода. С примерами, схемами и лайфхаками для лучшего понимания.

Читать: «Event loop для чайников: простыми словами о сложном механизме браузера»

@a_cup_of_java | Другие наши каналы
1
Эксперт из Amazon составил топ-10 тем в разработке, взгляд на которые он изменил за 10 лет

Разработчик Amazon изменил взгляды на ключевые темы программирования за 10 лет: от простоты кода до роли Java, ORM и Serverless-функций

Читать: «Эксперт из Amazon составил топ-10 тем в разработке, взгляд на которые он изменил за 10 лет»

@a_cup_of_java | Другие наши каналы
👍4👎1💊1
10 библиотек JavaScript, которые можно забыть в 2025 году

Неактуальные библиотеки и фреймворки JavaScript, о которых можно забыть в 2025 году. Более современные и производительные аналоги.

Читать: «10 библиотек JavaScript, которые можно забыть в 2025 году»

@a_cup_of_java | Другие наши каналы
🥰2🎉2
Spring Security: разберём по полочкам токены, фильтры и авторизацию (с диаграммами!)

Команда Spring АйО перевела статью, в которой подробно рассматривается процесс регистрации и аутентификации пользователей с использованием Spring Security.


Читать: https://habr.com/ru/companies/spring_aio/articles/879704/?utm_campaign=879704

@a_cup_of_java | Другие наши каналы
👏5👍1
Как уронить Minecraft своим модом

Разработка модификаций для игры Minecraft — очень интересное и приятное хобби. В этой статье мы посмотрим на ошибки в модификациях для нашей любимой игры на примере проекта Custom NPC+. Воспроизведём их в игре и уроним Minecraft.


Читать: https://habr.com/ru/companies/pvs-studio/articles/880346/?utm_campaign=880346

@a_cup_of_java | Другие наши каналы
Java Digest #21

Всем привет! 👋 👋 👋 👋👋 Мы — Java-разработчики Т-Банка: Андрей, Арсений, Роман, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.


Читать: https://habr.com/ru/companies/tbank/articles/880410/?utm_campaign=880410

@a_cup_of_java | Другие наши каналы
🔥2👎1