👩💻 Стоит ли учить Java в 2026: куда движется язык и где работают джависты Приглашаем на открытый урок. 🗓 16 июля в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «Java-разработчик». Программа урока: ✔️ Развенчиваем главный миф новичка: правда ли, что «Java умерла» и всем надо идти в Python или Go ✔️ Где Java реально работает в 2026: банки, финтех, маркетплейсы, стриминги с миллионами пользователей, логистика ✔️ Big Data на JVM: почему Kafka, Spark и Hadoop написаны на Java и зачем это знать даже питонисту ✔️ Куда движется язык: релизы каждые полгода, борьба с многословностью, нативная компиляция (GraalVM), связка с AI ✔️ Карьера джависта: зарплаты, стабильность и почему этот язык — фундамент для долгого пути в IT 🔗 Ссылка на регистрацию : https://vk.cc/cZloUh Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
БиБиблиотека Java разработчика
КатегорияOtherЯзыкRUДобавлен06 июл. 2026 г.КачествоПроверен
Подписчики1.7K
Сред. просмотры855
ERR51.3%
Цена-- RUB
Цена / подписчик--
Цена / просмотр--
Метрики обновлены: 06 июл. 2026 г.
Последние посты
🧠 @Value vs @ConfigurationProperties — кого выбрать? Часто вижу, как даже опытные разработчики по привычке используют @Value для инъекции конфигурации: @Value("${app.timeout}") private Duration timeout; ⚠️ Но с ростом приложения @Value становится хрупким и неудобным. 📌 Лучший подход — использовать @ConfigurationProperties : @ConfigurationProperties(prefix = "app") public record AppProperties(Duration timeout, String apiKey) {} @Bean @ConfigurationPropertiesBinding public AppProperties appProperties() { return new AppProperties(); } ✅ Преимущества @ConfigurationProperties : - 💡 Группирует настройки логически - 🔍 Работает с валидацией ( @Validated , @NotNull , и т.д.) - 📚 Отлично поддерживается IDE (автокомплит, рефакторинг) - 🔧 Удобно тестировать и мокать 🆕 Начиная с Spring Boot 2.2+ , можно использовать record-классы и просто зарегистрировать бин через @EnableConfigurationProperties : @Configuration @EnableConfigurationProperties(AppProperties.class) public class AppConfig {} Так что, если у вас в проекте до сих пор десятки @Value — самое время навести порядок. 📲 Мы в MAX 👉 @BookJava
🧠 @Value в Spring — это ловушка, если вы используете списки или map'ы Многие знают, что можно заинжектить список строк из application.yml вот так: app: langs: - en - fr - de @Value("${app.langs}") private List<String> langs; Но знаете, что вы получите? ⚠️ ОШИБКУ . @Value не умеет парсить YAML-массивы. Он ожидает строку, и даже с CSV-строкой ( en,fr,de ) — всё не так очевидно: Spring не применяет ConversionService для списков. 📌 Решение — использовать @ConfigurationProperties : app: langs: - en - fr - de @ConfigurationProperties(prefix = "app") @Component public class AppProps { private List<String> langs; // геттеры/сеттеры } 💡 Профит: - работает с List , Map , вложенными объектами; - валидация через @Validated и @NotEmpty ; - легко покрыть тестами; - меньше магии. ⚠️ @Value хорош для простых скаляров. Всё остальное — через @ConfigurationProperties . 📲 Мы в MAX 👉 @BookJava
🔍 Почему Optional — это не замена null везде и всегда Привет! Сегодня хочу поделиться одной из часто встречающихся ошибок при использовании Optional в Java. Многие разработчики, особенно начинающие, начинают использовать Optional везде, где может быть null , думая, что это автоматически делает код "безопасным". Но так ли это? 📌 Ключевая идея Optional — сигнализировать о возможном отсутствии значения в результате вызова метода . А не заменять все поля и параметры на Optional . Примеры плохой практики: public class User { private Optional<String> name; // ❌ Не нужно так делать } Почему это плохо: - Увеличивается сложность сериализации (особенно с Jackson, GSON). - Не соответствует архитектурной задумке: Optional — это не контейнер для полей. - Проблемы с JPA (Hibernate не дружит с Optional-полями). - Понижается читаемость кода. 💡 Лучше использовать Optional вот так: public Optional<User> findUserById(Long id) { // Возвращаем Optional, потому что пользователь может не существовать } То есть Optional — это про контракт на метод , а не про хранение данных . Если кратко: - ✅ Используй Optional в сигнатурах методов, когда результат может отсутствовать. - ❌ Не используй Optional в полях и параметрах конструктора. А ты как используешь Optional в проектах? Был ли опыт с его неправильным применением? Пиши в комментах 👇 📲 Мы в MAX 👉 @BookJava
👩💻 Как работает @Transactional в Spring: границы транзакций и типовые ошибки Приглашаем на открытый урок. 🗓 29 июня в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «Разработчик на Spring Framework». На занятии мы разберем: ✔️ Что реально делает @Transactional в Spring ✔️ Почему важны proxy и вызов метода через Spring Bean ✔️ Как работают propagation-режимы на примере REQUIRED и REQUIRES_NEW ✔️ Когда происходит rollback и почему checked exceptions не всегда откатывают транзакцию ✔️ Типовые ошибки при работе с транзакциями в сервисном слое Урок будет полезен Java/Kotlin-разработчикам, которые уже пишут приложения на Spring или начинают использовать Spring в реальных backend-проектах и хотят лучше понимать поведение транзакций. 🔗 Ссылка на регистрацию: https://vk.cc/cZ9GGY Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576