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

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

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

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

Java Learning 👩‍💻

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

Java Learning

➡️ Мощь статических методов: Использование методов интерфейсов

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

🗣В интерфейсе ListUtils определен статический метод max, который находит максимальный элемент в коллекции.

🗣В методе main мы вызываем статический метод max из интерфейса ListUtils, передавая ему список чисел.

🗣Мы выводим найденное максимальное число на экран.

Java Learning 👩‍💻

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

Java Learning

Дорогие подписчики, поздравляю вас с наступающим новым годом! Пусть в 2026 году исполнятся все ваши самые заветные желания🎄🎄🎄🎄

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

Java Learning

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

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

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

Java Learning 👩‍💻

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

Java Learning

⚙️ String.translateEscapes()

String.translateEscapes() (Java 15+) обрабатывает escape-последовательности в строках, превращая их в реальные символы. Это полезно для динамической обработки строк, содержащих \n, \t, \\ и другие управляющие символы.

Java Learning 👩‍💻

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

Java Learning

От первой строчки кода — до миллионов запросов в секунду.

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

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

Java Learning

⚙️ System.mapLibraryName()

System.mapLibraryName() преобразует логическое имя нативной библиотеки в платформозависимое. Это полезно при динамической загрузке .dll, .so или .dylib файлов в кроссплатформенных Java-приложениях.

Java Learning 👩‍💻

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

Java Learning

⚙️ ProcessHandle.descendants()

ProcessHandle.descendants() возвращает поток потомков (дочерних процессов) данного процесса. Это полезно для мониторинга и управления иерархией процессов, например, при запуске подпроцессов через ProcessBuilder.

Java Learning 👩‍💻

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

Java Learning

⚙️ LockSupport.parkNanos()

LockSupport.parkNanos() позволяет приостанавливать поток на заданное количество наносекунд, обеспечивая более точный контроль пауз по сравнению с Thread.sleep().

Java Learning 👩‍💻

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

Java Learning

⚙️ Cleaner.register()

Cleaner.register() позволяет выполнять код очистки перед удалением объекта сборщиком мусора. Это полезно для освобождения нативных ресурсов без явного вызова close().

Java Learning 👩‍💻

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

Java Learning

👀 Мониторинг использования памяти с MemoryMXBean

В Java можно отслеживать текущее потребление памяти JVM с помощью MemoryMXBean. Это полезно для диагностики утечек памяти и анализа работы сборщика мусора.

✔️ Использование ManagementFactory.getMemoryMXBean() позволяет получить информацию о потреблении памяти в реальном времени.

Java Learning 👩‍💻

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

Java Learning

⚙️ InetAddress.getByAddress()

InetAddress.getByAddress() позволяет создать IP-адрес вручную из массива байтов, без необходимости использования DNS-резолвера. Это полезно для работы с сетевыми протоколами и тестирования.

Java Learning 👩‍💻

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

Java Learning

Java-разработчики, у вас спрашивали про DDD на собеседовании?

А вы не знали, что ответить — кроме «ну это про бизнес-логику»?

Пора закрыть пробелы.
На практическом курсе по DDD и архитектуре микросервисов для Java-разработчиков вы:

✅ Соберёте сервис «Диспетчеризации заказов» с нуля
✅ Реализуете Aggregate, Value Object, Domain Service
✅ Освоите Clean Architecture, gRPC, Kafka, CQS
✅ Получите проект в портфолио — и уверенность в собеседованиях

👨‍🏫 Курс ведёт Кирилл Ветчинкин — действующий архитектор в Авито, ex-Staff Engineer в Купер, работает с 2019 года.

Всё на Java — никакого отрыва от вашей среды.
12 модулей, 6 недель практики, ревью от эксперта и живые эфиры.

Уже более 350 разработчиков прошли — теперь очередь за вами.

🔗 Записаться на курс https://microarch.ru/courses/ddd/languages/java?utm_source=posev&utm_medium=erid:2VtzqvCf2zB&utm_campaign=1

Реклама. ИП Ветчинкин К.Е. ИНН: 773376451099 Erid: 2VtzqvCf2zB

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

Java Learning

Frontend VK Hub — как работают наши интерфейсы?

Что делает интерфейсы VK быстрыми, удобными и устойчивыми под нагрузкой миллионов пользователей?
Frontend VK Hub — это сообщество инженеров, которые создают и развивают пользовательские интерфейсы для ВКонтакте, VK Play, VK WorkSpace и других сервисов экосистемы. Мы делимся практическим опытом, рассказываем о подходах к производительности, внедрении современных фреймворков и всему, что связано с улучшением Developer Experience.

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

Подписывайся!

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

Java Learning

⌨️ DSL в Kotlin: от теории к практике

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

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

Программа вебинара:


✔️ Что такое DSL и зачем он нужен в современной разработке

✔️ Основные элементы Kotlin для создания DSL: лямбды, infix-функции, расширения

✔️ Практические примеры использования DSL в Gradle, Ktor и TeamCity

Вебинар будет полезен:
Бэкенд-разработчикам на Kotlin, тимлидам и всем, кто хочет писать более чистый и поддерживаемый код.

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

🔗 Ссылка на регистрацию: https://otus.pw/A8kP/

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

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

Java Learning

✔️ Использование Flow API для реактивного программирования

Java 9 представила Flow API, который обеспечивает стандартный интерфейс для реализации реактивного программирования.

🗣️ Flow API позволяет создавать асинхронные, нелокальные потоки данных, упрощая работу с реактивными системами.

Java Learning 👩‍💻

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

Java Learning

С кодом у тебя всё ок.
Если что-то не работает — смотришь логи, находишь баг, фикcишь.

А с женщинами ощущение, будто:
— документации нет
— поведение недетерминированное
— один и тот же input → разный output
— вчера работало, сегодня — игнор

Ты вроде нормальный парень.
Не токсик. Не дурак. Не бедный.
По логике этого должно хватать.

Но система не сходится.

Ты общаешься — вроде без ошибок.
А в ответ холод, странные реакции или «давай как-нибудь потом».

Самое бесячее — ты не понимаешь, где именно происходит краш.

Со временем я понял простую вещь:
в отношениях и общении с женщинами другая архитектура.
Не интуиция. Не магия.
Просто другие правила, которые никто не объяснил.

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

Если ты привык дебажить, а не гадать — оставайся. Тут будет полезно: /channel/+T1mzcKH__J80NmI6

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

Java Learning

➡️ Использование Local-Variable Type Inference

✔️ Функция Local-Variable Type Inference позволяет объявлять локальные переменные без явного указания их типа, что делает код более компактным и улучшает его читаемость

Java Learning 👩‍💻

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

Java Learning

⚙️ Optional.stream()

Optional.stream()превращает Optional в поток: пустой, если значения нет, или с одним элементом, если значение присутствует. Это полезно для интеграции Optional в Stream-пайплайны.

Java Learning 👩‍💻

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

Java Learning

⚙️ Module.getPackages()

Module.getPackages() возвращает множество имён пакетов, принадлежащих модулю. Это полезно при динамическом анализе модульной структуры и рефлексии в Java 9+.

Java Learning 👩‍💻

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

Java Learning

⚙️ Class.getCanonicalName()

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

Java Learning 👩‍💻

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

Java Learning

⚙️ Character.getType()

Character.getType() возвращает тип символа по его Unicode-категории, например, буква, цифра, пунктуация и т.д. Это полезно для фильтрации и анализа текста, особенно в мульти-язычных или валидационных системах.

Java Learning 👩‍💻

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

Java Learning

⚙️ Arrays.mismatch()

Arrays.mismatch() сравнивает два массива и возвращает индекс первого несовпадающего элемента. Это полезно для эффективного поиска различий между данными.

Java Learning 👩‍💻

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

Java Learning

⌨️ 🤖 Хочешь прокачаться в backend-разработке? Но справишься ли ты с тестом по Kotlin?

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

На курсе:

✔️ Разработаете monolith, микросервисы и serverless с помощью Kotlin и фреймворков Spring, Ktor и бессерверных библиотек.
✔️ Освоите корутины для асинхронных и многопоточных задач, а также WebSocket, RabbitMQ, Kafka для транспорта.
✔️ Научитесь строить хранилища на Postgres, Cassandra, ArcadeDb и интегрировать OpenAPI с любым фронтендом.

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

➡️ Пройди тест и присоединяйся к группе: https://otus.pw/ft9j/

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

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

Java Learning

⚙️ Thread.sleep(Duration)

Thread.sleep(Duration) (Java 9+) позволяет приостанавливать выполнение потока на заданное время с использованием Duration, что делает код более читаемым и удобным.

Java Learning 👩‍💻

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

Java Learning

⚙️ Thread.getAllStackTraces()

Thread.getAllStackTraces() позволяет получить стек вызовов всех активных потоков. Это полезно для отладки многопоточных программ и анализа зависших потоков.

Java Learning 👩‍💻

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

Java Learning

⚙️ Micronaut

Micronaut — это лёгкий фреймворк для микросервисов, который быстро стартует, потребляет мало памяти и поддерживает компиляцию в нативные образы через GraalVM.

🔗 Документация

Java Learning 👩‍💻

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

Java Learning

⚙️ ProcessBuilder.redirectOutput()

ProcessBuilder.redirectOutput() позволяет перенаправлять стандартный вывод (stdout) запускаемого процесса в файл или в другой поток. Это полезно при работе с внешними процессами и логированием их вывода.

🔗 Документация

Java Learning 👩‍💻

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

Java Learning

⚙️ FileDescriptor.sync()

FileDescriptor.sync() в Java позволяет принудительно записать все несохранённые данные из буфера операционной системы на диск. Это полезно для обеспечения целостности данных в случае сбоя или отключения питания.

🔗 Документация

Java Learning 👩‍💻

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

Java Learning

⚙️ VarHandle.compareAndExchange()

VarHandle.compareAndExchange() позволяет атомарно обновлять значения переменной, только если текущее значение соответствует ожидаемому. Это полезно для реализации lock-free структур данных и многопоточной синхронизации.

🔗 Документация

Java Learning 👩‍💻

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