Чашечка Java
الذهاب إلى القناة على Telegram
Лучшие материалы по Java на русском и английском Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels
إظهار المزيد8 570
المشتركون
-324 ساعات
-27 أيام
-430 أيام
أرشيف المشاركات
8 566
Тестируем Spring Boot приложения через Spock Framework
Написание тестов - важная часть создания качественного ПО, но в то же время кажется неинтересным и утомительным занятием. Попробуем улучшить этот процесс, объединив сразу несколько крутых технологий.
В статье описан процесс интеграции Spring Boot и Spock Framework, а также приведены примеры тестирования в BDD подходе.
Читать: https://habr.com/ru/articles/775346/?utm_campaign=775346
8 566
Article: Efficiently Arranging Test Data: Streamlining Setup With Instancio
The need to ensure code quality is ubiquitous, regardless of the development paradigm. Continuous Deployment and Continuous Delivery, indicate that reliable test suites are directly connected to the speed of development and quicker customer feedback loop. Instancio automates the data setup step - the A in Arrange-Act-Assert. So, it allows you to put more emphasis on the business feature tested.
By Arman Sharif
Read: https://www.infoq.com/articles/randomized-test-data-java/
8 566
Будущее программирования: языки, зарплата и перспективы в 2024 году
Почему программисты не боятся искусственного интеллекта? Потому что им достаточно сказать заказчику: «Объясните компьютеру, что именно вы хотите». Так шутили еще недавно, но теперь такие шутки становятся не такими веселыми, как раньше. Искусственный интеллект, воплощенный в ChatGPT, продолжает совершенствоваться, в то время как IT-сообщество делится на скептиков и энтузиастов. Одни верят, что программистам не нужно меняться, другие думают, что новые языки и подходы в разработке окончательно похоронят ручной кодинг. На недавней дискуссии Artezio мы собрали влиятельных разработчиков и попросили предсказать, как будет меняться программирование в будущем, какие языки обещают быть на волне успеха и как оставаться в тренде.
Читать: https://habr.com/ru/companies/lanit/articles/774334/?utm_campaign=774334
8 566
Как мы делаем общие библиотеки
Сегодня я хотел поговорить о том, как мы выстраиваем процесс работы с общими библиотеками разработки. Я расскажу о нашем подходе, который позволяет соединить процессы, команды и инструменты в единое целое. Статья будет интересна тем, кто сопровождает, создает или интересуется, как библиотеки появляются на свет.
Читать: https://habr.com/ru/companies/nlmk/articles/770100/?utm_campaign=770100
8 566
Java News Roundup: Spring Framework 6.1, Spring Data 2023.1, Payara Platform, JEPs for JDK 22
This week's Java roundup for November 13th, 2023 features news from OpenJDK, JDK 22, and monthly, milestone and point releases of: Spring Framework; Spring Data; Payara Platform; Open Liberty; Micronaut; Grails; Quarkus; Tomcat; Apache Camel; Vert.x; Mojarra; Micrometer Metrics and Tracing; Project Reactor; Piranha; JDKMon; JobRunr; JHipster Lite; Testcontainers for Java; Arquillian; and Gradle.
By Michael Redlich
Read: https://www.infoq.com/news/2023/11/java-news-roundup-nov13-2023/
8 566
erid: 2VtzqxjHiZN
13 декабря пройдёт бесплатный онлайн-митап от Naumen о промышленной java-разработке приложений.
На митапе вы узнаете:
— как обновить тысячи Maven зависимостей и не сойти с ума;
— о практическом применении java-фреймворка Camunda BPMN и Spring для решения бизнес-задач;
— как устроен современный Spring Security.
Зарегистрироваться.
Встреча онлайн 13 декабря в 16:00 мск. Будут делиться знаниями, обмениваться идеями и лучшими практиками.
P.S. Если вы из Екатеринбурга — для вас будет афтепати, где вживую вы сможете пообщаться со спикерами и познакомиться друг с другом.
Реклама, АО «Нау-сервис», ИНН 6671116364, https://www.naumen.ru/
8 566
Генерация контрактов OpenApi или прикладной API first: oneOf, anyOf, allOf
Покажу несколько примеров сгенерированного года с использованием наследования и полиморфизма openapi.
OneAllAnyOf
Читать: https://habr.com/ru/articles/774928/?utm_campaign=774928
8 566
Spring и Hibernate простыми словами: обзор для новичков
Spring и Hibernate — два популярных инструмента для Java, которые используются в разработке приложений. В этой статье мы исследуем их основные функции и особенности, как они работают вместе и почему так высоко ценятся в IT-индустрии. А сложные концепции разбираем на понятные кусочки, которые мягко введут в курс дела любого новичка: программиста, аналитика или менеджера по продукту.
Читать: https://habr.com/ru/companies/productstar/articles/774508/?utm_campaign=774508
8 566
JDK 22: Новые возможности Java 22
Read: https://www.infoworld.com/article/3708329/jdk-22-the-new-features-in-java-22.html#tk.rss_java
8 566
Java-инспекции в IDEA 2023.2
Это ретроспективный пост про Java-инспекции IntelliJ IDEA 2023.2, в преддверии 2023.3 (которая сейчас в состоянии Beta 2). Несмотря на то, что эта версия вышла еще в июле, не все в точности помнят, что же там произошло, и какую версию они вообще используют.
А между тем, там не всё хорошо. Например, баги с тэгом
@snippet до сих пор не поправили.
Чтобы самому воспроизвести новости из ченжлога - нужно набирать много кода и проверять их. Это лень, это мы не делаем. Вместо этого, мы смотрим этот короткий пост с PNG-картинками, показывающими основные фишки.
Залетайте под кат и погнали!
Читать: https://habr.com/ru/companies/bar/articles/774504/?utm_campaign=7745048 566
IntelliJ IDEA 2023.2. Долгожданный LSP, встроенный AI-чат, апгрейд до Windows 10 и -Xmx2G
Только что вышла IntelliJ IDEA 2023.2. Добавилось море интересных фичей и важных улучшений.
Идея раздулась до 2 гигабайт хипа, появилась поддержка LSP-серверов, и теперь вам нужно проапгрейдиться с Windows 7 минимум до Windows 10.
Из мелочей: появился чата с нейронкой "AI Assistant". Профилировщик научился отображать подсказки прямо в редакторе, а интеграция с GitLab позволяет меньше переключаться между браузером и IDE.
Хотите узнать подробней?
Восхитительно!
Читать: https://habr.com/ru/companies/bar/articles/774494/?utm_campaign=774494
8 566
Добавление micrometer-метрик для взаимодействий по SOAP
Когда мы хотим знать, в каком состоянии находятся системы, с которыми наше приложение взаимодействует, мы используем механизм метрик. Самым распространенным механизмом работы с метриками в приложениях на Spring Boot является micrometer.
Для интеграций по HTTP с использованием REST очень удобно использовать
spring-boot-starter-actuator. Актуатор уже из коробки предоставляет набор из http_client_requests и http_server_requests метрик с разбивкой по uri, method и результату.
Но остались еще проекты, которые взаимодействуют по протоколу SOAP. Хотя экосистема Spring (как и ванильная Java) предоставляют возможность собирать веб-сервисы и клиенты для протокола SOAP, но коробочного решения для снятия метрик с таких клиентов не существует.
Читать: https://habr.com/ru/articles/774456/?utm_campaign=7744568 566
Разработка высоконагруженного игрового WebSocket сервера на Java, Netty с поддержкой BattleRoyale/Matchmaking
Всем доброго времени суток. В предыдущей статье я затронул тему клиентской разработки браузерной игры. В этой же теме попробую пролить свет на тему разработки мультиплеера, а именно - разработки игрового websocket-tcp сервера на Netty.
Разберем технические особенности реализации такого сервера, способы улучшения производительности, игровую логику и т.д.
Читать: https://habr.com/ru/articles/774322/?utm_campaign=774322
8 566
Сквозь дебри разработки, или как я пытался написать приложение
Хотелось бы начать эту статью хоть с какого-то приветствия, но так как мы собрались тут ради хоть как-то полезной информации, перейду сразу к делу. Итак, немного вводных и постановка проблемы: любому начинающему разработчику нужен опыт. А как наработать опыт? Именно опыт, а не просто определённый объём зазубренной теории с полным нулём практики. Есесна написать что-то своё – проект, который не стыдно и в портфолио положить, да и просто перед знакомыми похвастаться.
План прост: написать приложение, которое помогает отслеживать количество
каких-либо базовых упражнений.
Читать: https://habr.com/ru/articles/774308/?utm_campaign=774308
8 566
Проект Loom: Понимание новой модели параллелизма Java
Read: https://www.infoworld.com/article/3652596/project-loom-understand-the-new-java-concurrency-model.html#tk.rss_java
8 566
Если хотите быть в тренде и получать лучшее из мира IT, у Tproger есть 4 канала, которые вам в этом помогут:
— всё о нейросетях и ИИ: @neurochannel
— полезные сохранёнки на все случаи жизни: @prog_stuff
— нужные инструменты для ваших проектов: @prog_tools
— новости из мира технологий: @your_tech
Кстати, там сейчас ещё и розыгрыш подписок Telegram Premium проходит, так что заходите, смотрите условия и подписывайтесь.
8 566
Kotlin продолжает подниматься по индексу популярности Tiobe
Read: https://www.infoworld.com/article/3710290/kotlin-keeps-climbing-the-tiobe-popularity-index.html#tk.rss_java
8 566
Генерация контрактов OpenApi или прикладной API first
Стек: OpenAPI, Spring Boot, Gradle
Небольшой гайд по генерации серверной и клиентской части в Spring Boot приложении.
Краткое содержание:
- Подготовьте репозиторий, в котором будут располагаться спецификации. Выделите отдельные директории для каждого сервиса и каждой версии спецификации внутри сервиса. Разделите спецификацию на удобные для работы части. Подготовьте техническую учётную запись с помощью который можно получить доступ к репозиторию.
- В сервисе-сервере сгенерируйте сервер по спецификации. Настройте созданные контроллеры/имплементируйте интерфейсы.
- В сервисе-клиенте сгенерируйте клиентскую часть по спецификации. Подключите сгенерированного feign клиента.
Generate it
Читать: https://habr.com/ru/articles/770528/?utm_campaign=770528
8 566
Как удалить заданный символ из строки с помощью рекурсии и итерации в Java? Вопрос для собеседования по кодированию
Здравствуйте, ребята, в прошлом я уже рассказывал о нескольких популярных и часто задаваемых на собеседованиях вопросах по Java-программированию и кодированию, и сегодня я хочу поделиться еще одним популярным вопросом на собеседовании для Java-разработчиков по кодированию на основе строк. Вопрос звучит так - напишите метод для удаления всех встречающихся символов из строки на языке Java. Вы не можете использовать библиотечные методы типа replace() или remove(), которые могут решить эту проблему за вас. Вы должны сами построить логику. Вы должны предоставить как итеративное, так и рекурсивное решение этого вопроса. Кроме того, необходимо предоставить несколько модульных тестов, которые можно написать с помощью JUnit или TestNG.
Вопросы и учебные пособия для собеседования по Java
Read: http://www.java67.com/2023/11/how-to-remove-given-character-from.html
8 566
Java News Roundup: JEPs for JDK 22, Spring Shell, Quarkus, Apache Camel, JDKMon, J-Fall 2023
This week's Java roundup for November 6th, 2023 features news from OpenJDK, JDK 22, Spring Shell 3.2.0-M3, 3.1.5, 3.0.9 and 2.1.14, Quarkus 3.5.1 and 3.2.8, Apache Camel 3.14.10, Apache Camel Quarkus 3.2.2, JDKMon 17.0.81, Arquillian 1.7.2.Final, Gradle 8.5.0-RC1 and J-Fall 2023.
By Michael Redlich
Read: https://www.infoq.com/news/2023/11/java-news-roundup-nov06-2023/
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
