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

➡️ Использование библиотеки Takari для создания плагинов Maven

Takari — это библиотека, предназначенная для упрощения разработки Maven-плагинов. Она предоставляет удобные инструменты для создания высокопроизводительных плагинов с минимальным количеством кода.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

➡️ Использование библиотеки JDBI3 для работы с базами данных

JDBI3 — это легковесная библиотека для удобного взаимодействия с базами данных. Она позволяет выполнять SQL-запросы и маппить результаты прямо на объекты Java.

• JDBI3 упрощает работу с базами данных благодаря поддержке fluent-интерфейса.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

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

Java Learning 👩‍💻

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

Java Learning

Трюк с битовыми операциями

Этот код демонстрирует обмен значений двух переменных (a и b) без использования дополнительной временной переменной.

Он использует битовую операцию XOR (^). Ключевой момент здесь в том, что XOR двух одинаковых чисел возвращает 0, а XOR числа с 0 возвращает само это число. Таким образом, когда мы применяем XOR к a и b и затем обратно, мы фактически обмениваем их значения.

Java Learning 👩‍💻

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

Java Learning

Хотите научиться разрабатывать парсеры pdf-файлов и создавать полезные приложения?

Приглашаем на открытый урок «Разработка парсера pdf-файла».

🗓 24 октября в 20:00 МСК

🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Professional»

На вебинаре разберем:

- как разработать парсер для выписки ВТБ банка в формате pdf;
- весь путь от идеи до практического применения;
- ответы на все возникающие вопросы.

⬇️ В результате урока вы получите практически полезное приложение с подробностями реализации.

Спикер Сергей Петрелевич — опытный Java/Kotlin-разработчик и преподаватель.

Все участники вебинара получат специальную цену на обучение!

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

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

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

Java Learning

➡️ Использование библиотеки json-unit для тестирования JSON-ответов в Java

json-unit — это удобная библиотека для сравнения и тестирования JSON-данных в Java. Она поддерживает сравнение структуры, частичное совпадение данных и игнорирование несущественных различий, что делает её идеальной для тестирования API-ответов.

• json-unit — отличный выбор для разработчиков, которым нужно тестировать и проверять сложные JSON-структуры.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

➡️ Использование библиотеки joor для упрощенной работы с рефлексией в Java

Joor — это легковесная библиотека для работы с рефлексией в Java, которая значительно упрощает использование этого мощного механизма.

✔️ Она предоставляет удобный API для создания экземпляров, вызова методов и доступа к полям классов, делая код более читаемым и компактным.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

#Вопросы_с_собеседования
Если вы хотите переопределить equals(), какие условия должны удовлетворяться для переопределенного метода?

- Метод должен удовлетворять условиям транзитивности, рефлексивности и симметричности.

- Метод должен быть согласованным - многократные вызовы с неизменными объектами должны возвращать один и тот же результат.

- Если x.equals(y) вернёт true, то x.hashCode() должен быть равен y.hashCode().

- Метод не должен выбрасывать исключения при сравнении допустимых значений.


Java Learning 👩‍💻

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

Java Learning

➡️ Использование библиотеки Jolt для трансформации JSON в Java

Jolt — это мощная библиотека для преобразования и манипуляции JSON-данными. Она позволяет описывать преобразования в виде спецификаций и легко применять их к JSON-структурам, что особенно удобно при интеграции данных.

• Jolt — идеальный инструмент для случаев, когда необходимо трансформировать сложные JSON-данные.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

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

Java Learning 👩‍💻

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

Java Learning

👩‍💻 «Знакомство со Spring Cloud».

Приглашаем на открытый урок, где мы разберем:

✔️ что такое Spring Cloud и для чего он нужен;
✔️ из каких основных компонентов состоит Spring Cloud;
✔️ как использовать ключевые функции Spring Cloud для разработки.

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

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

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

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

Java Learning

Бесплатный интенсив: Java-разработчик: старт в профессии с нуля.

📆 Когда: 15-16 октября в 19:00 по мск.

За два дня интенсива в прямом эфире, под руководством опытного Java-разработчика, вы сможете:


✔️ Познакомиться с синтаксисом и основными конструкциями языка Java.
✔️ Написать свой первый проект и определить, подходит ли вам профессия разработчика.
✔️ Создать Telegram-бота с нуля.
✔️ Узнать ответы интересующие вас вопросы.
✔️ Получить доступ к закрытому профессиональному сообществу.

🎁 Подарки для участников интенсива: гайд «Как заговорить на сленге IT-специалистов», карта компетенций начинающего Java-разработчика и доступ в закрытое сообщество «Старт в Java» от Хекслета!

Реклама. ООО "ХЕКСЛЕТ РУС". ИНН 7325174845. erid:LjN8K2kGH

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

Java Learning

➡️ Использование библиотеки Picnic для форматирования таблиц в текстовом формате в Java

Picnic — это библиотека для создания красиво отформатированных текстовых таблиц в Java. Она упрощает генерацию таблиц с правильным выравниванием, заголовками и рамками, что делает её идеальной для вывода табличных данных в консольных приложениях.

• Picnic отлично подходит для случаев, когда нужно представить данные в текстовой таблице, например, для отчетов или логов.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

➡️ Использование библиотеки Jinjava для рендеринга шаблонов в Java

Jinjava — это шаблонизатор для Java, основанный на синтаксисе Jinja, популярного в мире Python. Эта библиотека позволяет гибко рендерить HTML-шаблоны с поддержкой переменных, циклов, условий и фильтров.

• Jinjava — отличный выбор для тех, кому нужно интегрировать мощный шаблонизатор с простым и понятным синтаксисом в свои Java-приложения.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

➡️ Использование StackWalker для эффективного анализа стека вызовов

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

В отличие от устаревших методов, таких как Thread.getStackTrace(), StackWalker предоставляет гибкий и производительный способ получения информации о стеке, поддерживая фильтрацию и построчную обработку.

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

Java Learning 👩‍💻

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

Java Learning

IT Community Day в Санкт-Петербурге прошёл идеально! 👨‍💻

Сотни IТ-специалистов встретились, чтобы послушать доклады топовых спикеров, прокачать hard и soft skills, познакомиться, повеселиться на афтерпати, и главное — стать частью крупнейшего IТ-комьюнити!

Завидуем тем, кто смог попасть на это мероприятие. А остальным советуем не расстраиваться: совсем скоро состоятся IT Community Day в:

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

✔️ И в Екатеринбурге 19 октября поговорим об интеграции LLM в приложение, методологии API-first и комбинации личного и профессионального развития.

Успейте зарегистрироваться! 💚

👉 Казань, 12 октября
👉 Екатеринбург, 19 октября

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

Java Learning

В чем отличия между TreeSet и HashSet?

Основное отличие между TreeSet и HashSet заключается в том, что TreeSet хранит элементы в отсортированном порядке, в то время как порядок хранения элементов в HashSet не определен. TreeSet также обеспечивает быстрый поиск и извлечение элементов в отсортированном порядке.

Java Learning 👩‍💻

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

Java Learning

♨️ Анализировать множество показателей и не перегружать приложение?
С Java Flight Recorder – это легко.


Приглашаем вас на открытый урок «Обзор инструмента Java Flight Recorder».

🗓 22 октября в 20:00 МСК

🆓 Бесплатно. Урок в рамках старта курса «Java Developer. Advanced» от OTUS.

JFR:
- Регистрирует множество событий внутри виртуальной машины Java
- Не ухудшает производительность
- Помогает детально разобраться в причинах сбоев и ошибок

Хотите освоить? - приходите на вебинар!

Спикер – Александр Царёв, техлид в Сбере.

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

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

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

Java Learning

➡️ Использование библиотеки Reactor для работы с реактивным программированием в Java

Reactor — это библиотека для построения асинхронных, реактивных систем. Она использует потоковую обработку данных и позволяет эффективно управлять асинхронными операциями с минимальной задержкой.

• Reactor поддерживает функциональный стиль программирования и является основой для Spring WebFlux.

🔗 Ссылочка на доку

Java Learning 👩‍💻

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

Java Learning

❓ Вопрос на собеседовании

Что такое try-with-resources в Java, и как он улучшает управление ресурсами?

Ответ ⬇️
"Try-with-resources" — это конструкция, введенная в Java 7, которая автоматически закрывает ресурсы (например, файлы, потоки) после использования. Это помогает избежать утечек ресурсов и улучшает читаемость кода.

Пример использования ⚙️

Здесь BufferedReader автоматически закрывается после завершения блока try, даже если возникает исключение.

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class Main {
public static void main(String[] args) {
try (BufferedReader br = new BufferedReader(new FileReader("file.txt"))) {
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}


Java Learning 👩‍💻

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

Java Learning

Станьте разработчиком нейро-сотрудников на Python и зарабатывайте от 150.000р в месяц 🔥🔥🔥

Мы научим вас создавать топовых нейро-сотрудников на базе GPT-4 Omni, и вы сможете:
1️⃣ Устроиться разработчиком в крупную компанию и зарабатывать от 150 тысяч ₽ в месяц
2️⃣ Разрабатывать такие проекты на заказ и зарабатывать от 500 тысяч ₽ за проект
3️⃣ Создать нейро-сотрудника в вашей компании и вырасти на +30-100% в зарплате

Что будет на интенсиве?
🧬 Теория: как создаются нейро-сотрудники с GPT-4o на Python
🧬 Практика: мы создадим нейро-консультанта, нейро-HR, нейро-маркетолога и др.

Ведущий интенсива - Senior AI разработчик нейросетей и основатель Университета искусственного интеллекта
🔥 Регистрируйтесь на бесплатный интенсив! Встречаемся в ближайший четверг!

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

Java Learning

➡️ Использование Sequenced Collections для упорядоченных коллекций

Sequenced Collections — интерфейс, который объединяет функциональность упорядоченных коллекций, таких как списки и наборы.

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

🗣 Это удобное API для работы с коллекциями, где требуется работа с последовательностями элементов.

Java Learning 👩‍💻

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

Java Learning

Главная конференция по бизнесу в Telegram

31 октября в Москве пройдёт первая конференция по Telegram от крупнейшего сервиса аналитики Telemetr. Топы Телеграм-рынка, маркетологи и представители бизнеса обсудят самые актуальные тенденции и перспективы развития платформы Telegram.

Присоединиться к мероприятию можно будет и онлайн. Тут найдёте всю информацию - https://telemetr.pro.

На конференции вас ждут:
- 20+ опытных спикеров
- 1000+ онлайн и офлайн участников
- две сцены
- нетворкинг активности
- лаунж зона
- вкусный фуршет
- яркое afterparty в PAPA Moscow

Спикерами главной сцены будут: Артемий Лебедев, руководитель Telemetr - Денис Ларионов, основатель агентства GoDigital - Сурен Альбертян, основатель Сидорин ЛАБ - Дмитрий Сидорин и многие другие!

За подробностями сюда - https://telemetr.pro

А купить билет со скидкой в 10% можно, использовав наш промокод - TMConf10

Купить билет - https://telemetr.pro

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

Java Learning

Выиграй 4 000 000 ₽ на True Tech Champ

МТС приглашает опытных и начинающих разработчиков поучаствовать в чемпионате. В треке «Программирование роботов» нужно будет создать алгоритм для прохождения лабиринта. Победит тот, чей робот окажется самым быстрым. При этом не обязательно разбираться в устройстве роботов: эксперты трека уже сконструировали их и создали прошивку. Для участия достаточно уметь программировать на одном из языков: С++, C#, Go, Python, JS, Java.

Регистрация открыта до 15 октября, отборочные онлайн-этапы уже стартовали!

До финала смогут дойти на равных разработчики вне зависимости от стека или уровня: питонисты или джависты, джуны или сеньоры. А с полуфиналов начнётся командный этап — можно собрать свою дримтим.

Участникам дадут доступ к API и подробные инструкции. Эксперты трека будут помогать, направлять и отвечать на вопросы на вебинарах.

Зарегистрироваться можно по ссылке.

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

Java Learning

SonarJava

SonarJava — это плагин для статического анализа кода, который используется для проверки качества кода Java. Он может обнаруживать различные проблемы, такие как ошибки кода, дублирование кода, потенциальные уязвимости безопасности и т. д.

Java Learning 👩‍💻

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

Java Learning

➡️ Использование StructuredTaskScope для управления асинхронными задачами

StructuredTaskScope — это API, который упрощает управление группами асинхронных задач. Он позволяет легко запускать несколько задач параллельно и контролировать их выполнение, гарантируя, что все дочерние задачи будут завершены корректно, даже в случае ошибок.

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

Java Learning 👩‍💻

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

Java Learning

❓ Вопрос на собеседовании

Что такое "weak references" в Java и когда их стоит использовать?

Ответ ⬇️
Weak references (слабые ссылки) позволяют ссылаться на объекты, не предотвращая их сборку сборщиком мусора (GC). Если на объект осталась только слабая ссылка, GC сможет освободить его память, когда посчитает нужным. Это полезно в ситуациях, когда нужно избежать утечек памяти, но при этом объект не должен оставаться в памяти, если он больше не используется, как в кэширующих структурах данных или пуле объектов.

Java Learning 👩‍💻

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

Java Learning

⚡️ Вся база знаний по IT в одном месте!

🧑‍💻 IT База — краткие разборы самого важного из мира IT. Сотни мастхев-ресурсов, каждый день новые материалы по работе и подготовке к собеседованиям. Подойдёт как новичкам, так и состоявшимся айтишникам;

🖥 Frontend База — всё для фронтенд разработчиков. Готовые решения для проектов, полезные курсы по JS/HTML/CSS, готовые роадмапы для комфортного освоения в профессии и дальнейшего развития;

👣 Backend База — самое важное для бэкендеров. Всё о работе с PHP, MySQL, MongoDB, Golang и Rust в одном месте, плюс полные курсы и лайфхаки для работы на каждый день;

🖥 База Знаний — склад полезных курсов и материалов, где легко найти что-то нужное по хэштегам. Если вам что-то интересно про IT, то оно уже лежит на Базе, проверяйте.

⏲ Успей подписаться, чтобы не потерять!

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

Java Learning

❓ Вопрос на собеседовании

Что такое "backpressure" в реактивных системах на Java, и как его можно обработать?

Ответ ⬇️
"Backpressure" возникает, когда источник данных производит элементы быстрее, чем потребитель может их обработать. В Java для управления этим в реактивных системах используется интерфейс Flow.Subscriber, который позволяет контролировать поток данных через запрос определенного количества элементов с помощью метода request.

🗣 Пример:

import java.util.concurrent.Flow;

public class BackpressureExample {
public static void main(String[] args) {
MyPublisher publisher = new MyPublisher();
MySubscriber subscriber = new MySubscriber();
publisher.subscribe(subscriber);
}
}

class MyPublisher implements Flow.Publisher<Integer> {
@Override
public void subscribe(Flow.Subscriber<? super Integer> subscriber) {
subscriber.onSubscribe(new Flow.Subscription() {
@Override
public void request(long n) {
for (int i = 1; i <= n; i++) {
subscriber.onNext(i);
}
subscriber.onComplete();
}

@Override
public void cancel() {
}
});
}
}

class MySubscriber implements Flow.Subscriber<Integer> {
private Flow.Subscription subscription;

@Override
public void onSubscribe(Flow.Subscription subscription) {
this.subscription = subscription;
subscription.request(5); // Запрашиваем 5 элементов
}

@Override
public void onNext(Integer item) {
System.out.println("Получен элемент: " + item);
}

@Override
public void onError(Throwable throwable) {
System.err.println("Ошибка: " + throwable.getMessage());
}

@Override
public void onComplete() {
System.out.println("Все элементы получены.");
}
}


Java Learning 👩‍💻

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

Java Learning

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

Java Learning 👩‍💻

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