Чашечка Java
Ir al canal en Telegram
Лучшие материалы по Java на русском и английском Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels
Mostrar más8 573
Suscriptores
+424 horas
+37 días
+830 días
Archivo de publicaciones
8 573
E2E-тестирование Flink Job с Kafka
Привет, Хабр! С вами Александр Бобряков, техлид в команде МТС Аналитики. Я к вам с новой статьёй из цикла про фреймворк Apache Flink.
В предыдущей части я рассказал, как создать Unit-тест на полноценную джобу Flink и отдельные stateful-операторы с использованием Flink MiniCluster. Ещё мы научились запускать мини-кластер один раз перед всеми тестовыми классами, которые нуждаются в нём. В дополнение создали вспомогательные абстракции и аннотации, значительно разделяя ответственность в тестах и упрощая логику написания новых тестов.
В предыдущих тестах на джобу мы не затрагивали интеграцию с Kafka, ведь нам были не важны реальные source и sink. В этой статье продолжим разбираться в тестировании и напишем полноценный E2E-тест, который охватит Kafka и Flink вместе с использованием Testcontainers. Также рассмотрим неочевидные проблемы в тестировании и новые универсальные абстракции.
Читать: https://habr.com/ru/companies/ru_mts/articles/819681/?utm_campaign=819681
@a_cup_of_java
___
Другие наши проекты
8 573
Ловушки volatile, DCL и синхронизации в Java
А что если окажется, что простые знания на самом деле более нюансированные, а старые знакомые, такие как Double-checked locking, являются неоднозначными? Именно на такие мысли наталкивает изучение кода реальных проектов. Результаты этого исследования мы и рассмотрим в этой статье.
Читать: https://habr.com/ru/companies/pvs-studio/articles/819625/?utm_campaign=819625
@a_cup_of_java
___
Другие наши проекты
8 573
Стенд для нагрузочного тестирования на Testcontainers
Опыт работы с тестовыми сценариями достиг высокого уровня удобства благодаря использованию Testcontainers. С помощью Testcontainers появилась возможность удобно создавать окружение для интеграционных тестов (см. статью Изоляция в тестах с Кафкой). Мы можем поднимать контейнеры с различными версиями разных баз данных, брокеров сообщений и т.д. При фокусе на интеграционные тесты, Testcontainers становится незаменимым компонентом среды выполнения. Нагрузочное тестирование, хотя и встречается реже, чем функциональное, может быть более увлекательным с технической точки зрения и с точки зрения инженерного любопытства. Интересно наблюдать за графиками и исследовать детали работы конкретного сервиса. Это редкая, но для меня более захватывающая задача.
Цель данной статьи — продемонстрировать подход к созданию стенда для нагрузочного тестирования в том виде, в котором пишутся обычные интеграционные тесты: в форме spock-тестов с использованием Testcontainers в среде Gradle проекта. В качестве утилит нагрузочного тестирования используются Gatling, WRK и Yandex.Tank.
Читать: https://habr.com/ru/articles/819589/?utm_campaign=819589
@a_cup_of_java
___
Другие наши проекты
8 573
Быстрее, выше, сильнее: оптимизируем Spring-контекст для тестов
Всем привет! Я Юнес, SDET в Тинькофф. Помогаю автоматизаторам создавать более эффективные и надежные тесты, готовить тестовые данные и настраивать CI/CD-пайплайны.
Расскажу о доступных способах оптимизации Spring-контекста для тестов. Будет здорово, если у вас есть знания о Spring Framework и опыт написания тестов: тогда мы будем на одной волне. Давайте разберемся в хитросплетениях аннотаций и конфигураций вместе под катом!
Читать: https://habr.com/ru/companies/tbank/articles/816051/?utm_campaign=816051
@a_cup_of_java
___
Другие наши проекты
8 573
Java-фреймворк Quarkus добавляет расширения для наблюдаемости
Read: https://www.infoworld.com/article/3715504/quarkus-java-framework-adds-dev-extensions-for-observability.html#tk.rss_java
@a_cup_of_java
___
Другие наши проекты
8 573
Блеск и нищета нового Scrolling API в Spring Data
В Spring Data 3.1 появилось новое API для итерирования по большому объему данных: Scrolling API. Давайте изучим его, посмотрим на практические применения с примерами кода и преимущества по сравнению со всем известным Pageable. А также разберём, чего Scrolling API пока не хватает, и можно ли его вообще брать в свои проекты. Если хотите выяснить, как с новым API в теории ускорить пагинацию больших данных, — заходите под кат.
Читать: https://habr.com/ru/companies/spring_aio/articles/819193/?utm_campaign=819193
@a_cup_of_java
___
Другие наши проекты
8 573
Офер за 2 дня в команду Яндекс.Вертикалей
Яндекс ищет бэкенд-разработчиков для команды Вертикалей! Java, Kotlin, Scala, Go - заявку принимают до 17 апреля. Все требования и подробности участия на сайте.
Читать: «Офер за 2 дня в команду Яндекс.Вертикалей»
@a_cup_of_java
___
Другие наши проекты
8 573
Наследование в Java, часть 2: Объект и его методы
Read: https://www.infoworld.com/article/2987584/java-101-inheritance-in-java-part-2.html#tk.rss_java
@a_cup_of_java
___
Другие наши проекты
8 573
Наследование в Java, часть 1: ключевое слово extends
Read: https://www.infoworld.com/article/2987426/java-101-inheritance-in-java-part-1.html#tk.rss_java
@a_cup_of_java
___
Другие наши проекты
8 573
Java News Roundup: JEPs Targeted for JDK 23, JHipster 8.5, Gradle 8.8, Spring AI 1.0-M1
This week's Java roundup for May 27th, 2024 features news highlighting: four JEPs targeted for JDK 23, namely: JEP 482, Flexible Constructor Bodies (Second Preview), JEP 481, Scoped Values (Third Preview), JEP 480, Structured Concurrency (Third Preview) and JEP 471, Deprecate the Memory-Access Methods in Unsafe for Removal; and the releases of JHipster 8.5, Gradle 8.8 and Spring AI 1.0-M1.
By Michael Redlich
Read: https://www.infoq.com/news/2024/06/java-news-roundup-may27-2024/
@a_cup_of_java
___
Другие наши проекты
8 573
Офер за 2 дня в команду Яндекс.Вертикалей
Яндекс ищет бэкенд-разработчиков для команды Вертикалей! Java, Kotlin, Scala, Go - заявку принимают до 17 апреля. Все требования и подробности участия на сайте.
Читать: «Офер за 2 дня в команду Яндекс.Вертикалей»
@a_cup_of_java
___
Другие наши проекты
8 573
Обзор фич LTS-релиза Java 21: в новый год с новой Java
Обзор фич релиза Java 21, который вышел в сентябре 2023. Возвращается золотой век Java-разработки.
Читать: «Обзор фич LTS-релиза Java 21: в новый год с новой Java»
@a_cup_of_java
___
Другие наши проекты
8 573
Жора в огне
%%excerpt%% Ваш друг Жора решил открыть своё дело — архитектурное бюро «Барокко». Оказалось, что таланта одного человека для ведения бизнеса недостаточно, и Жора в панике предложил вам стать партнёром. Готовы ли вы всерьёз взяться за управление бюро?
Читать: «Жора в огне»
@a_cup_of_java
___
Другие наши проекты
8 573
Три задачи на знание Java от ChatGPT
Языковая модель ChatGPT составила простую, среднюю и сложную задачи по Java. Сможете ли вы решить все три задачи?
Читать: «Три задачи на знание Java от ChatGPT»
@a_cup_of_java
___
Другие наши проекты
8 573
10 забавных фактов о Java
%%excerpt%% Угадаете, какие из них — правда в коротком тесте Иннотех и Tproger
Читать: «10 забавных фактов о Java»
@a_cup_of_java
___
Другие наши проекты
8 573
Кратко про класс CompletableFuture в Java
Привет, Хабр!
Асинхронное программирование уже давно является полноценной частью Java. С появлением Java 8 и введением класса
CompletableFuture, асинхронное программирование стало более доступным.
CompletableFuture — это класс в пакете java.util.concurrent, предоставляющий возможности для асинхронного программирования. Он поддерживает выполнение задач в фоновом режиме, цепочки задач, обработку исключений и многое другое.
Читать: https://habr.com/ru/companies/otus/articles/818955/?utm_campaign=818955
@a_cup_of_java
___
Другие наши проекты8 573
Как преобразовать JSON в Map в Java 8 без использования сторонних библиотек, таких как Jackson или Gson
Здравствуйте, ребята, если вы работаете с данными JSON, то вы, наверное, знаете, что JSON - это набор пар ключ-значение, и поэтому во многих случаях вам нужно преобразовать их в Map на Java. Хотя существует множество Java-библиотек, таких как Jackson и Gson, которые обеспечивают поддержку разбора JSON в Java-объекты, в стандартном JDK не так много поддержки разбора JSON или манипуляций с ним. Хотя парсинг JSON все еще не завершен, начиная с JDK 8u60+ встроенный движок Nashorn способен преобразовывать содержимое JSON в java.util.Map. Для разбора JSON в Map не требуется никаких внешних зависимостей, о чем вы узнаете из этой статьи.
Вопросы и учебные пособия для собеседования по Java
Read: http://www.java67.com/2024/06/how-to-convert-json-to-map-in-java-8.html
@a_cup_of_java
___
Другие наши проекты
8 573
Разгоняем код с Object Mother и Object Pool в Java
Сегодня в статье рассмотрим такие паттерны как Object Mothet и Object Pool, двух мощных инструментов в Java. Эти паттерны упрощают управление объектами и повышают эффективность работы приложений.
Читать: https://habr.com/ru/companies/otus/articles/818307/?utm_campaign=818307
@a_cup_of_java
___
Другие наши проекты
8 573
Создание дистрибутивов для разных операционных систем в Java 21 и 22
Статья рассказывает о построении дистрибутивов приложений для операционных систем Windows, macOS и Linux в случае использования Java 21 и 22.
Продолжает ранее опубликованную статью о создании дистрибутивов в предыдущих версиях Java, подробно описывая кардинальные изменения, произошедшие с того времени.
Читать: https://habr.com/ru/companies/jugru/articles/816981/?utm_campaign=816981
@a_cup_of_java
___
Другие наши проекты
8 573
Топ-10 онлайн-курсов для изучения Python в 2024 году - Лучшее из многого
Здравствуйте, ребята, если вы хотите выучить язык программирования Python в 2024 году и
и ищете лучшие курсы Python, то вы попали по адресу. В интернете есть множество
ресурсов для изучения Python в Интернете, включая бесплатные и платные. В прошлом я
рассказывал о таких доступных источниках, как бесплатные книги, учебники, курсы, специализации и сертификации. Тем не менее, многие из вас спрашивали о более полных и
продвинутые курсы по Python, чтобы овладеть этим важным навыком программирования в 2024 году. Мы
отобрали несколько продвинутых онлайн-курсов по Python с таких платформ, как Udemy, Coursera, edX, ZTM Academy и Pluralsight , чтобы помочь вам изучать Python на лучших ресурсах.
Вопросы и учебные пособия для собеседования по Java
Read: http://www.java67.com/2020/05/top-5-courses-to-learn-python-in-depth.html
@a_cup_of_java
___
Другие наши проекты
¡Ya disponible! Investigación de Telegram 2025 — los principales insights del año 
