Java guru
5.39K subscribers
1 photo
1 video
1 file
261 links
Новости из мира Java, обзоры интересных библиотек и фреймворков, обучающие статьи. Онлайн обсуждения актуальных тем и обмен опытом. Для связи @RodmanDV
Download Telegram
Работа с геометрией в JPA и Spring Boot 3

Автору проекта из статьи нужно было работать с адресами клиентов и проверять входит ли адрес в зону доставки. Для работы с геометрией используется GeoJson. В качестве базы PostgreSQL. Приложение для работы с базой использует Spring Data JPA.

https://habr.com/ru/articles/831566/
🔥51
Создание масштабируемых приложений при помощи Kafka и реактивного программирования

В статье описывается построение системы из нескольких микросеовисов на базе Spring Boot Webflux и Kafka. Даже взаимодействие по WebSocket добавили. Если вы не работали с этими технологиями, то там вначале дается краткая справка. Из странностей: описывается старт Kafka не в podman/docker, а «по старинке».

В целом статья хорошая и «без лишней воды».

https://habr.com/ru/companies/piter/articles/831772/
🔥5
Генерация HTTP клиентов для Spring Boot приложения по OpenAPI спецификации

В статье написано о том как можно сгенерировать код HTTP клиентов для Spring Boot приложения по OpenAPI спецификации, используя плагин openapi-generator для Gradle.

https://maciejwalkowiak.com/blog/spring-boot-openapi-generate-client/
🔥6
Кэш второго уровня Hibernate для чайников

В Hibernate есть возможность гибкой настройки L2 кэша. Можно подключать различные провайдеры с реализацией кеша. В статье приводится пример настройки для ehcache.

https://habr.com/ru/articles/833478/
🔥7
Using Dev Containers in JetBrains IDEs

Очень крутая фича от JetBrains!

На сколько быстро новые сотрудники в ваших команд настраивают окружение и сборку проекта?
Были ли у вас кейсы когда у одного разработчика все собирается, а у другого нет из-за «хитрых» настроек окружения?
Теперь эти «ужасы» возможно уйдут в прошлое, конечно при условии, что эту фичу в JetBrains нормально допилят ;-)

В докер можно будет поместить «все что нужно для разработки».

https://blog.jetbrains.com/idea/2024/07/using-dev-containers-in-jetbrains-ides-part-1/
🔥8👍1
Паттерн Transactional Outbox и его реализация с использованием Spring Boot

В статье описан один из вариантов реализации паттерна Transactional Outbox. Этот паттерн часто используют в микросервисной архитектуре для гарантии согласованности 2х систем без необходимости использовать распределенные транзакции.

https://www.wimdeblauwe.com/blog/2024/06/25/transactional-outbox-pattern-with-spring-boot/
🔥4👍1
Как сделать анализатор кода за два дня

Автор в статье рассказывает как разрабатывали анализатор кода Lua в рамках хакатона. Сам анализатор писали на Java с использованием ANTLR v4. Lua был выбран потому, что его синтаксис довольно прост.

https://habr.com/ru/companies/pvs-studio/articles/835936/
🔥4
Материалы по System Design

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

https://github.com/javabuddy/best-system-design-resources?tab=readme-ov-file
🔥6
JPA Entity. Загрузи меня не полностью

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

https://habr.com/ru/companies/spring_aio/articles/833918/
🔥5
Forwarded from Sasha Kruasanova PROIT
This media is not supported in your browser
VIEW IN TELEGRAM
🚩 🚩 🚩 Красные флаги для разработчиков!

Мы тут с ребятами, из разных областей разработки, накидали «красных флагов»
от продуктов, тех и тим лидов.

А вас от каких фраз бомбит?

https://tttttt.me/kruasanova_as

#хаха
#красныефлаги
#разработка
1🔥3👍21
Я недавно «засветился» в ролике одного очень крутого блогера - Саши Круасановой )))

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

У нее прикольный контент. Если нравится, то подписывайтесь )))

https://tttttt.me/kruasanova_as
🔥6👍21
Зачем нам вообще изучать Domain-Driven Design? Какая от него польза?

На это есть как минимум 5 причин:

👉 Благодаря разделению на Предметные Области, код становится понятнее.
Код, грамотно декомпозированный по доменам, легче читать и понимать, поскольку он отражает реальные бизнес-процессы. Читая понятный код, мы вырабатываем больше эндорфина и меньше кортизола.

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

👉 Благодаря Ограниченному Контексту, предметные области проще делить на модули. Это особенно касается больших проектов — маленькими узкоспециализированными компонентами проще управлять.

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

👉 Жёсткое структурирование по предметным областям спасёт при слабой или невнятной аналитике. Что позволит нам, разработчикам, дольше выдерживать покер-фейс посреди аналитического хаоса.

https://habr.com/ru/companies/sberbank/articles/781612/
🔥5👍2
system-design-cheat-sheet

При собеседовании на позицию Senior+ во многих компаниях проводят этап System Design. На нем вам нужно показать ваш кругозор и умение проектировать архитектуру. По ссылке ниже репозиторий с краткой выжимкой по теме System Design.

https://github.com/gavr-dev/system-design-cheat-sheet
🔥10
Английский для разработчиков

Хочу поделиться с вами бесплатным курсом английского специально для разработчиков на freeCodeCamp. Можно подтянуть свой уровень до А2. Там 105 уроков, каждый с практическими заданиями.

https://freecodecamp.org/learn/a2-english-for-developers
🔥82👍1
кафка.jpg
190.5 KB
Самое простое описание принципов работы Kafka
🔥9👍1
Управляем Arduino при помощи Java

Если вы хотите вынести логику работы с Arduino на ПК или Raspberry Pi и при этом писать на Java, то в этом вам поможет Firmata (готовая прошивка для Arduino) и Firmata4j (Java библиотека). В статье на стороне Raspberry Pi для примера поднимается Spring Boot приложение для управления Arduino.

https://foojay.io/today/control-your-arduino-with-spring/
🔥6👍1
Исправление зависимостей в один клик

Если вы работаете с Gradle, то вам стоит обратить внимание на Dependency Analysis Gradle Plugin. Этот плагин помогает находить лишние зависимости и автоматически исправлять проблемы с ними. Однако стоит быть осторожным с этим плагином так как он может давай "осечки" на сложных скриптах. Это связанно с тем, что плагин использует упрощенную грамматику для парсинга. В будующих версиях парсинг обещают улучшить.

https://dev.to/autonomousapps/one-click-dependencies-fix-191p
🔥2👍1
VisuAlgo

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

https://visualgo.net/en
👍4🔥2