Java Developer
15.1K subscribers
2K photos
155 videos
13 files
2.28K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
👩‍💻 HashMap vs WeakHashMap: в чём разница на практике

В отличие от HashMap, WeakHashMap хранит ключи через weak-ссылки. Как только на ключ не остаётся strong-ссылок — GC его собирает и запись автоматически удаляется из мапы.

Удобно для кэширования объектов, которые не должны жить дольше, чем нужны.

❤️ — если было полезно
💯 — если уже знал

tags: #обучение

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
23🔥4💯3
Недалёкое будущее

📱 Java Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18👍74🔥2👻2
🎮 Как писали Java-игры для телефонов в нулевых

В статье разбирается мобильный геймдев образца 2005 года: как разработчики умещали игры в 250КБ, писали God-объекты на 56КБ со всей логикой игры и обходились без float, потому что процессор его просто не тянул.

Автор показывает процедурный код на Java, 3D-движки без Z-буфера и статические массивы-пулы вместо абстракций.

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

tags: #статья

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
11🔥4👍2
А потому что нефиг тестировщика пускать на прод!

📱 Java Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁20🔥4👍31
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Плагин для IntelliJ, который наконец-то починил комментарии

Этот плагин автоматически продолжает комментарий на новой строке с сохранением отступа. А если нажать Enter ещё раз — аккуратно завершает блок и возвращает нормальный код.

Мелочь, которая экономит нервы каждый день.

Ссылка на плагин

tags: #полезное

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🔥8🤯51
👩‍💻 Бесплатный курс по созданию веб-сервиса на Java

В первой части разбирают серверную логику, ООП и принципы проектирования. Во второй — углубляются в архитектуру и собирают собственный стек библиотек.

Хороший старт для тех, кто хочет уверенно войти в Java-бэкенд.

Часть 1 | Часть 2

tags: #обучение #курсы

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍3🔥1
💻 Базы данных: какую выбрать и как не пожалеть потом

Выбор базы данных влияет на архитектуру, производительность и стоимость поддержки. В статье разбираются все основные типы СУБД с примерами, когда что применять.

Самая частая ошибка из практики: берут то, что уже знают, вместо того что подходит. Вторая — не думают о росте нагрузки заранее. Миграция потом выходит дорого.

Подробнее в статье

tags: #статья

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53🔥2
👩‍💻 В Spring 7.1 завезут моки прямо в конструкторе теста

Больше не нужно объявлять отдельные поля с @MockitoBean — теперь можно инжектить моки прямо через конструктор.

@SpringBootTest
class MyServiceTest(
@MockitoBean val repository: UserRepository,
@MockitoSpyBean val emailService: EmailService
)


Работает с Java-конструкторами, test records и компактными конструкторами в Kotlin.

Источник

tags: #новости

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍6🔥3
👩‍💻 Паттерны проектирования: с примерами кода

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

Внутри разбирают три классических паттерна (Singleton, Factory Method и Observer) — с примерами кода и объяснением, когда каждый из них реально полезен.

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

tags: #статья

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍5🔥42🤯1
👩‍💻 @Transactional: откат транзакции без выброса исключения

Обычно для отката транзакции приходится выбрасывать исключение. Но есть способ сделать это явно — через TransactionAspectSupport.

Удобно, когда откат нужен по бизнес-логике, а не из-за ошибки — исключение бросать не нужно.

tags: #обучение

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥32😁1
Две стороны одной медали

📱 Java Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁17👍4🤣4🔥21
💻 Что такое хостинг и как выбрать подходящий

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

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

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

tags: #статья

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥21🤩1
👩‍💻 Spring Boot: игнорируем лишние поля в JSON-запросе

Если клиент прислал поля, которых нет в вашем DTO — Spring бросит UnrecognizedPropertyException и запрос упадёт.

Особенно болезненно, когда фронт или партнёры обновили свою схему, а вы ещё нет.

tags: #обучение

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥42🤯1
👩‍💻 Динамическое программирование: разбираемся с нуля

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

Главная идея: разбиваем задачу на части, запоминаем результаты, складываем в оптимальное решение — повторные вычисления исключены.

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

Подробнее в статье

tags: #статья

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍52🔥2😁1🤯1
This media is not supported in your browser
VIEW IN TELEGRAM
👩‍💻 Spring Tools теперь генерирует аккуратные текстовые блоки для аннотаций запросов

При конвертации AOT-метаданных репозитория в аннотации запросов Spring Tools теперь автоматически форматирует их в текстовые блоки.

Меньше ручного форматирования, больше читаемости кода.

tags: #полезное

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥72🤯2
Вопрос с собеседования

Почему git cherry-pick может быть опасен при работе в команде?

Ответ: cherry-pick создаёт новый коммит с тем же содержимым, но другим хешем. Если оригинальный коммит позже попадёт в ветку через merge, Git воспримет их как разные изменения — и вы получите дублирующийся код или конфликт.

Поэтому cherry-pick лучше использовать точечно: перенести хотфикс в продакшн-ветку или забрать нужное изменение, которое ещё не готово к полному merge. Для регулярной синхронизации веток — merge или rebase надёжнее.


tags: #собеседование

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥1
👩‍💻 Как тестируют бэкенд: разбор направлений и инструментов

Статья покрывает весь спектр: от API-тестирования и автотестов до нагрузочного и структурного тестирования. Также разбор популярных инструментов — Swagger, Postman, JMeter, Pytest и OWASP ZAP.

Полезно как джунам, которые хотят разобраться в теме, так и тем, кто хочет систематизировать знания.

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

tags: #статья

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥1
👩‍💻 Spring Boot: FetchType.EAGER — частая ошибка в JPA

Помечая связь как EAGER, вы говорите ORM: «загружай это всегда». Даже если данные не нужны — JOIN выполнится. На больших таблицах это бьёт по производительности.

Используйте EAGER только там, где связь нужна всегда и точно — таких случаев немного.

tags: #обучение

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍4🤯1
👩‍💻 Java — это не только Spring: что скрывается в легаси

Статья про другую сторону Java — JSP, JSF, Freemarker и AspectJ, которые до сих пор живут в enterprise-проектах и продолжают использоваться.

Полезно, чтобы понять, как устроены реальные продакшн-системы, а не только Spring-стек.

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

tags: #статья

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61🔥1
👩‍💻 Spring Boot: настраиваем CORS глобально через WebMvcConfigurer

Вместо того чтобы вешать @CrossOrigin на каждый контроллер, можно настроить CORS один раз глобально.

Так все эндпоинты получают единую CORS-политику — меньше дублирования, легче менять правила.

tags: #полезное

📱 Java Developer | 📲 MAX | ИИ-Бот
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍21
Наши реалии теперь таковы

📱 Java Developer | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁12🤣5🤯1