java_per_month | Unsorted

Telegram-канал java_per_month - Java Learning

13937

Обучающий канал по Java Ссылка для друга - https://t.me/+ZEYYht6-46w5MDM6 По всем вопросам @valentin_mascarov Реклама на бирже - https://telega.in/c/Java_per_month

Subscribe to a channel

Java Learning

💪 Мощный инструмент в одной строке: Метод of()

Метод of() обеспечивает компактный способ создания неизменяемых коллекций.

🗣️ Этот метод является удобным и эффективным инструментом для создания коллекций с набором известных элементов.

Java Learning 👩‍💻

Читать полностью…

Java Learning

⚡️ Квиз на знание Java

Пройти тестирование — сложно! А ты справишься?
21 вопрос, 30 минут

Проверь себя - пройди квиз и оцени свой уровень навыков, а также свою готовность к обучению на курсе — «Разработчик на Spring Framework» от OTUS.

💻 За 5 месяцев обучения ты освоишь современные возможности Spring, научишься быстро проходить путь от идеи до production-grade, создавать Web-приложения на микросервисной архитектуре и решать высокоуровневые задачи по разработке.

👉 ПРОЙТИ ТЕСТ: https://clck.ru/3LotdK

Если успешно пройдешь тест, сможешь забронировать место в группе по выгодной цене! И еще дарим промокод SPRING5

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Java Learning

➡️ Сила коллекций: Неизменяемые коллекции в Java

Java 10 ввела полезную возможность создания неизменяемых копий коллекций с помощью новых методов copyOf.

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

Java Learning 👩‍💻

Читать полностью…

Java Learning

⌛ Что будет выведено при выполнении кода?

Пояснение
⬇️

a == b — false, потому что b — новый объект в куче.
a == c — true, потому что строковые литералы из пула строк указывают на один объект.


Java Learning 👩‍💻

Читать полностью…

Java Learning

Есть фича. Есть дедлайн. Есть понимание, что тесты надо писать… но они отъедают время, которого итак впритык.

Один наш знакомый девелопер сказал: «С тех пор как поставил Explyt Test — начал писать меньше тестов… но покрытие стало лучше. Как это вообще возможно?!»

Попробуйте сами. Плагин сам предлагает тесты для вашего кода — прямо в IDE.
👉 explyt.ai — сэкономь себе пару часов уже сегодня.

Читать полностью…

Java Learning

⚙️ System.identityHashCode()

System.identityHashCode() возвращает хеш-код объекта, основанный на его реальном адресе в памяти, независимо от переопределения hashCode(). Это полезно для диагностики, дебага, трекинга объектов и работы с объектами, у которых переопределён hashCode() нестандартным образом

Java Learning 👩‍💻

Читать полностью…

Java Learning

🤖 Хотите автоматизировать инфраструктуру для тестирования прямо в Gradle?

На открытом уроке «Облако в кармане: запускаем всю инфраструктуру для теста при сборке» от OTUS мы расскажем, как избежать ручных настроек и запусков. Вместо этого вы научитесь автоматизировать весь процесс с помощью Docker, DockerCompose и TestContainers, интегрируя их с Gradle.

Урок полезен для разработчиков на Kotlin и Java, которые работают с автотестами — интеграционными и end-to-end.

В ходе урока вы освоите:
▫️Автоматический запуск всей необходимой инфраструктуры для тестирования.
▫️Создание Docker-образов для тестов и деплоя.
▫️Разработку автотестов, которые поднимут ваши навыки на новый уровень.

Участники получат скидку на курс «Kotlin Backend Developer. Professional».

➡️ Встречаемся 29 апреля в 20:00 МСК, регистрация открыта: https://otus.ru/lessons/kotlin/?utm_source=telegram&utm_medium=cpc&utm_campaign=kotlin&utm_term=Java_per_month&utm_content=lesson_29-04-2025_usp-universal_kotlin_text_no-headline_aida_long_aibanner_lesson-banner_blue_standart#event-5714

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Java Learning

🚫 Антипаттерн недели: Нарушение принципа инкапсуляции через public поля

В Java открытие полей класса как public — плохая практика. Это нарушает инкапсуляцию и делает объект уязвимым к неконтролируемым изменениям извне.

✔️ Используйте private поля и getter/setter-методы для доступа и контроля над значениями.

Java Learning 👩‍💻

Читать полностью…

Java Learning

👩‍💻 Разработка на Java требует глубокого понимания не только языка, но и принципов работы JVM, многопоточности и современных фреймворков.

Курс «Java Developer. Professional» — это структурированное обучение для разработчиков, которые хотят выйти на новый уровень, освоить актуальный стек технологий и уверенно претендовать на позиции уровня Middle+.

🦾 Вы получите 96 часов практической работы, обучение на живых вебинарах, вы разберете ключевые аспекты работы JVM, научитесь строить эффективные многопоточные приложения, освоите Spring WebFlux, Kafka, реактивный Postgres и Kubernetes.

Программа OTUS постоянно обновляется, соответствуя требованиям рынка, а диплом ценится работодателями.

👉 Пройдите вступительное тестирование и присоединяйтесь к группе: https://clck.ru/3LcZiv

🎁 Начните обучение со скидкой, подробности у менеджеров. ПРОМОКОД: JAVA_04

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Java Learning

⚙️ Class.getNestMembers()

Class.getNestMembers() возвращает массив всех классов, принадлежащих одной «группе вложенности» (nest) — то есть тех, кто может делиться приватными методами и полями друг с другом. Это полезно для анализа доступа между вложенными классами и для инструментов байткод-анализа.

Java Learning 👩‍💻

Читать полностью…

Java Learning

Бесплатный урок по Apache Kafka⭐️

Учим работать с реальными исходными данными, а не на теоретических примерах.

✅Расскажем про язык Кафки: топики, партиции, продюсеры-консьюмеры, кластер, ноды. 

✅Рассмотрим: как работают очереди сообщений, сколько должно быть консьюмеров для эффективной вычитки, как повысить надёжность кластера с помощью репликации данных.

✅Покажем, как развернуть кластер Кафки на своём ПК с 3 нодами, schema-registry и авторизацией.

Обычно в инструкциях кластер из 1 ноды, зукипера и 1 брокера, но это не наш путь, смотрим сразу на практике.

Забрать урок👉🏻 в боте

Читать полностью…

Java Learning

⚙️ Pattern.asPredicate()

Pattern.asPredicate() превращает регулярное выражение в Predicate<String>, который можно использовать прямо в потоках (Stream). Это полезно для фильтрации строк без явного вызова .matches().

Java Learning 👩‍💻

Читать полностью…

Java Learning

☄️ Интеграционное тестирование | Spring Boot + Yandex SourceCraft + Amplicode + Docker Compose Starter

В новом видео вы узнаете, как писать интеграционные тесты быстро и эффективно, совмещая сильные стороны нескольких инструментов. 

Мы покажем, как использовать генерацию кода от Amplicode учитывающую контекст всего приложения и дополнить её точечной генерацией от Yandex SourceCraft Code Assistant, а также быстро настроить окружение для тестов с помощью не так давно появившегося Docker Compose стартера.

⚡️СМОТРЕТЬ НА YOUTUBE 
⚡️СМОТРЕТЬ В VK ВИДЕО
⚡️СМОТРЕТЬ НА RUTUBE 

#реклама
О рекламодателе

Читать полностью…

Java Learning

⚙️ Collections.nCopies()

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

Java Learning 👩‍💻

Читать полностью…

Java Learning

👩‍💻 JDBC — ваш швейцарский нож для работы с данными

Приглашаем на открытый урок.

🗓 22 апреля в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Professional».

О чём поговорим:
✔️Основы JDBC: что это такое, зачем нужно и как работает
✔️Практические примеры выполнения сложных запросов
✔️Работа с транзакциями и обработка ошибок в JDBC
✔️ Оптимизация производительности при работе с данными через JDBC

Кому будет интересно:
Вебинар будет полезен разработчикам, инженерам по базам данных и архитекторам ПО, стремящимся улучшить навыки работы с базами данных и оптимизировать взаимодействие с данными.

В результате урока:
Вы научитесь эффективно использовать JDBC для работы с базами данных и сможете применять полученные знания в реальных проектах

🔗 Ссылка на регистрацию: https://clck.ru/3LUYuy

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Java Learning

🌐 Настройка HTTP-прокси в Java

Этот код настраивает HTTP-прокси для Java-приложения, устанавливая адрес, порт, имя пользователя и пароль прокси-сервера.

✔️ Это позволяет направлять запросы через прокси для обхода ограничений или повышения безопасности.

Java Learning 👩‍💻

Читать полностью…

Java Learning

⚙️ Оптимизация сборщика мусора с помощью -XX:+UseG1GC

Java предоставляет множество возможностей для оптимизации производительности приложений.

✔️ Одной из таких возможностей является использование современного сборщика мусора G1 (Garbage First), который улучшает работу приложений с большим объемом данных и снижает задержки.

➡️ Чтобы включить использование G1GC, необходимо добавить флаг -XX:+UseG1GC при запуске Java-приложения:

java -XX:+UseG1GC G1GCExample


Java Learning 👩‍💻

Читать полностью…

Java Learning

🤖 А ты справишься с тестом по Kotlin?

🏆 Пройди тест из 10 вопросов, проверь свой уровень знаний и получи скидку на онлайн-курс «Kotlin Backend Developer. Professional» от OTUS!

Если успешно пройдешь тест, сможешь забронировать место в группе по выгодной цене! И еще дарим промокод Kotlin5

🎫
Курс можно приобрести в рассрочку

➡️ Пройти тест и забрать скидку: https://otus.ru/lessons/kotlin/assessment/?utm_source=telegram&amp;utm_medium=cpm&amp;utm_campaign=kotlin&amp;utm_term=Java_per_month&amp;utm_content=headline_29-04-2025_usp-universal1_android_text_no-headline_aida_short_photogram_banner-test_green_standart

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Читать полностью…

Java Learning

⚙️ Class.getPermittedSubclasses()

Class.getPermittedSubclasses() возвращает список всех классов, которым разрешено наследовать sealed-класс. Это полезно для анализа и валидации иерархий sealed-типов во время выполнения, особенно в плагин-системах и фреймворках.

Java Learning 👩‍💻

Читать полностью…

Java Learning

⚙️ Integer.rotateLeft()

Integer.rotateLeft() выполняет циклический сдвиг битов числа влево. Это полезно для создания быстрых хеш-функций, криптографии и некоторых алгоритмов работы с битами

Java Learning 👩‍💻

Читать полностью…

Java Learning

➡️ Строковые шаблоны (Preview)

Строковые шаблоны (string templates) — новая функция в режиме preview, упрощающая создание строк с вычисляемыми значениями.

🗣️ Ранее используемая в Java конкатенация приводила к сложному коду, тогда как строковая интерполяция в других языках сокращает код, но увеличивает риски безопасности.

ℹ️ Шаблонные выражения сочетают лаконичность интерполяции и высокую безопасность.

String name = "Joan";
String info = STR."My name is \{name}";
assert info.equals("My name is Joan"); // true


Выражение использует обработчик STR и встроенное выражение {name}, которое может включать строки, арифметику, методы и поля. Обработчики выполняются динамически и обеспечивают безопасность кода. Шаблоны не работают без обработчика, отвечающего за интерполяцию и валидацию.

Java Learning 👩‍💻

Читать полностью…

Java Learning

⚙️ Class.isSynthetic()

Class.isSynthetic() возвращает true, если класс был создан компилятором и не существует в исходном коде напрямую. Это полезно для анализа байткода, фреймворков и генераторов кода, особенно при работе с лямбдами, вложенными классами и bridge-методами

Java Learning 👩‍💻

Читать полностью…

Java Learning

⌛ Что будет выведено при выполнении кода?

Пояснение
⬇️

Статический блок выполняется один раз при первом обращении к классу.
Блок инициализации экземпляра {} выполняется перед каждым вызовом конструктора, при создании объекта. Поэтому: один static, два instance, два constructor.


Java Learning 👩‍💻

Читать полностью…

Java Learning

⚙️ Class.isHidden()

Class.isHidden() проверяет, является ли класс скрытым — то есть загруженным как временный или внутренний, без явного имени в classpath. Это полезно при работе с динамической генерацией байткода, шейпингом JIT-классов и JVM-инструментами.

Java Learning 👩‍💻

Читать полностью…

Java Learning

ClassLoader.getResources()

ClassLoader.getResources() находит все ресурсы с указанным именем в classpath и возвращает Enumeration<URL>. Это полезно для загрузки всех версий конфигурационных файлов, плагинов или ресурсов из JAR-файлов и папок одновременно

Java Learning 👩‍💻

Читать полностью…

Java Learning

⚙️ System.gc() + System.runFinalization()

Хотя явно вызывать сборку мусора в Java не рекомендуется, комбинация System.gc() и System.runFinalization() может быть полезна в тестах, профилировании и при ручном контроле над ресурсами во время разработки

Java Learning 👩‍💻

Читать полностью…

Java Learning

⌛ Что будет выведено при выполнении кода?

Пояснение
⬇️

Java кэширует объекты Integer от -128 до 127. Переменные a и b указывают на один объект из пула, поэтому a == b → true. Значение 200 вне диапазона, c и d — разные объекты → false.


Java Learning 👩‍💻

Читать полностью…

Java Learning

⚙️ Class.getRecordComponents()

Class.getRecordComponents() возвращает информацию о компонентах записи (record). Это полезно для рефлексии, сериализации и автоматического отображения данных в Record-классах.

Java Learning 👩‍💻

Читать полностью…

Java Learning

Collections.disjoint()

Collections.disjoint() проверяет, не имеют ли две коллекции общих элементов. Это полезно для фильтрации, сравнения и оптимизации поиска пересечений.

Java Learning 👩‍💻

Читать полностью…

Java Learning

Math.abs()

Math.abs() возвращает абсолютное значение числа (модуль). Это полезно для работы с расстояниями, разницей между числами и при математических вычислениях.

Java Learning 👩‍💻

Читать полностью…
Subscribe to a channel