Основы работы с массивами и списками: что нужно знать каждому
Что такое массив и список. Показываем основы работы с данными в программировании. Рассматриваем пошаговую инструкцию ✔ Tproger
Читать: «Основы работы с массивами и списками: что нужно знать каждому»
@a_cup_of_java | Другие наши каналы
Что такое массив и список. Показываем основы работы с данными в программировании. Рассматриваем пошаговую инструкцию ✔ Tproger
Читать: «Основы работы с массивами и списками: что нужно знать каждому»
@a_cup_of_java | Другие наши каналы
👍1
Разработка плагина для интеграции Яндекс-Календаря с IntelliJ IDEA
Последние 10 лет я занимаюсь java разработкой и на протяжении всего этого времени Intellij Idea является неотъемлемой частью моей(да и многих других джавистов) работы. К сожалению некоторых вещей, которые были бы удобны лично мне, в ней нет, но к счастью есть возможность расширять IDE с помощью плагинов. На моём ноутбуке установлен linux и нет какой-то удобной нотификации событий из корпоративного календаря, а IDE практически всегда открыта на главном мониторе. По этой причине(а ещё из-за внезапно появившегося окна свободного времени и простого интереса) я решил, почему бы не интегрировать календарь прямо в IDE, чтобы получать нотификации и точно не пропустить ничего важного?
Об этом и пойдёт речь в статье.
Читать: https://habr.com/ru/articles/875464/?utm_campaign=875464
@a_cup_of_java | Другие наши каналы
Последние 10 лет я занимаюсь java разработкой и на протяжении всего этого времени Intellij Idea является неотъемлемой частью моей(да и многих других джавистов) работы. К сожалению некоторых вещей, которые были бы удобны лично мне, в ней нет, но к счастью есть возможность расширять IDE с помощью плагинов. На моём ноутбуке установлен linux и нет какой-то удобной нотификации событий из корпоративного календаря, а IDE практически всегда открыта на главном мониторе. По этой причине(а ещё из-за внезапно появившегося окна свободного времени и простого интереса) я решил, почему бы не интегрировать календарь прямо в IDE, чтобы получать нотификации и точно не пропустить ничего важного?
Об этом и пойдёт речь в статье.
Читать: https://habr.com/ru/articles/875464/?utm_campaign=875464
@a_cup_of_java | Другие наши каналы
👍5❤1
Добавляем скомпилированный фронт внутрь jar-файла при его сборке
Упаковка и развёртывание фронта внутри бэка.
Иллюстрация возможности развернуть фронт на основе встроенного в spring web-сервера.
Читать: https://habr.com/ru/articles/875546/?utm_campaign=875546
@a_cup_of_java | Другие наши каналы
Упаковка и развёртывание фронта внутри бэка.
Иллюстрация возможности развернуть фронт на основе встроенного в spring web-сервера.
Читать: https://habr.com/ru/articles/875546/?utm_campaign=875546
@a_cup_of_java | Другие наши каналы
👍1
Канареечные релизы на Camunda и Togglz
Привет, Хабр! На связи Егор, бэкенд-разработчик из команды Портфолио в Т-Банке. Мы занимаемся актуализацией данных компаний и периодически внедряем новые подходы в наши процессы разработки.
В последнее время мы часто выпускаем новую функциональность, используя метод канареечных релизов. Хочу рассказать о том, как мы это делаем. У себя на проекте мы используем Camunda, поэтому в статье разберем, как более безопасно выпускать новые версии bpmn-схемы на прод, минимизируя влияние багов на пользователей.
Статья написана с учетом того, что читатель уже знаком с Camunda и имеет опыт разработки приложений на этом движке.
Читать: https://habr.com/ru/companies/tbank/articles/875444/?utm_campaign=875444
@a_cup_of_java | Другие наши каналы
Привет, Хабр! На связи Егор, бэкенд-разработчик из команды Портфолио в Т-Банке. Мы занимаемся актуализацией данных компаний и периодически внедряем новые подходы в наши процессы разработки.
В последнее время мы часто выпускаем новую функциональность, используя метод канареечных релизов. Хочу рассказать о том, как мы это делаем. У себя на проекте мы используем Camunda, поэтому в статье разберем, как более безопасно выпускать новые версии bpmn-схемы на прод, минимизируя влияние багов на пользователей.
Статья написана с учетом того, что читатель уже знаком с Camunda и имеет опыт разработки приложений на этом движке.
Читать: https://habr.com/ru/companies/tbank/articles/875444/?utm_campaign=875444
@a_cup_of_java | Другие наши каналы
❤2👍1
Красивая обработка ответов в WebClient
Преимущества асинхронного взаимодействия ясны многим, однако работа с библиотекой WebFlux часто вызывает затруднения у Java-разработчиков
В этой статье разложены основы работы с webclient и реактивными стримами, взаимодействия Издателя и Подписчика, а также обработки ответов и ошибок, возникающих в процессе выполнения программы
Читать: https://habr.com/ru/articles/873358/?utm_campaign=873358
@a_cup_of_java | Другие наши каналы
Преимущества асинхронного взаимодействия ясны многим, однако работа с библиотекой WebFlux часто вызывает затруднения у Java-разработчиков
В этой статье разложены основы работы с webclient и реактивными стримами, взаимодействия Издателя и Подписчика, а также обработки ответов и ошибок, возникающих в процессе выполнения программы
Читать: https://habr.com/ru/articles/873358/?utm_campaign=873358
@a_cup_of_java | Другие наши каналы
👍5
Стратегии извлечения
Это первая статья из четырех, в которых я попробую подробно описать и найти решение проблеме N+1. Первые две статьи, должны раскрыть причины, которые могут приводить к проблеме N+1. В третьей статье я предложу варианты поиска этой проблемы. В четвертой статье предложу рабочие варианты решения.
N+1 уже набила всем, N+одну оскомину, но до сих пор не теряет актуальность. Со своей стороны, могу сказать, что исключение из кода дополнительных запросов в базу, может значительно ускорить работу вашего приложения.
Читать: https://habr.com/ru/articles/875134/?utm_campaign=875134
@a_cup_of_java | Другие наши каналы
Это первая статья из четырех, в которых я попробую подробно описать и найти решение проблеме N+1. Первые две статьи, должны раскрыть причины, которые могут приводить к проблеме N+1. В третьей статье я предложу варианты поиска этой проблемы. В четвертой статье предложу рабочие варианты решения.
N+1 уже набила всем, N+одну оскомину, но до сих пор не теряет актуальность. Со своей стороны, могу сказать, что исключение из кода дополнительных запросов в базу, может значительно ускорить работу вашего приложения.
Читать: https://habr.com/ru/articles/875134/?utm_campaign=875134
@a_cup_of_java | Другие наши каналы
❤4
Маппинг даты и времени в Hibernate и JPA
Сегодня любой Java разработчик сходу сможет правильно ответить на вопрос "Как смапить дату и время из колонки таблицы БД на поле в Java классе?". Или нет?
На самом деле, нюансов по ходу решения этой задачи может возникнуть немало.
В новом переводе от команды Spring АйО рассказывается про подробности работы с современным API
Читать: https://habr.com/ru/companies/spring_aio/articles/875762/?utm_campaign=875762
@a_cup_of_java | Другие наши каналы
Сегодня любой Java разработчик сходу сможет правильно ответить на вопрос "Как смапить дату и время из колонки таблицы БД на поле в Java классе?". Или нет?
На самом деле, нюансов по ходу решения этой задачи может возникнуть немало.
В новом переводе от команды Spring АйО рассказывается про подробности работы с современным API
java.time, правильный маппинг данных с учётом часовых поясов, устаревших типов java.util.Date, Calendar и многое другое.Читать: https://habr.com/ru/companies/spring_aio/articles/875762/?utm_campaign=875762
@a_cup_of_java | Другие наши каналы
🔥3
Как писать связующий код без Java-делегатов в Camunda Cloud
Введенный в 2015 году, паттерн внешней задачи (external task pattern) становится всё более популярным. Вместо того чтобы движок процессов активно вызывал какой-либо код (push), паттерн внешней задачи добавляет работу в некую очередь и позволяет воркерам (workers) извлекать их по мере необходимости. Этот метод также известен как публикация/подписка (publish/subscribe). Движок процессов публикует задачи, а воркеры подписываются на их выполнение.
Читать: https://habr.com/ru/articles/876066/?utm_campaign=876066
@a_cup_of_java | Другие наши каналы
Введенный в 2015 году, паттерн внешней задачи (external task pattern) становится всё более популярным. Вместо того чтобы движок процессов активно вызывал какой-либо код (push), паттерн внешней задачи добавляет работу в некую очередь и позволяет воркерам (workers) извлекать их по мере необходимости. Этот метод также известен как публикация/подписка (publish/subscribe). Движок процессов публикует задачи, а воркеры подписываются на их выполнение.
Читать: https://habr.com/ru/articles/876066/?utm_campaign=876066
@a_cup_of_java | Другие наши каналы
IntelliJ IDEA 2025.1 EAP 2: Поддержка Containerfile и обновления для Dockerfile
Команда Spring АйО рада поделиться с новостью от JetBrains: стала доступна вторая версия EAP IntelliJ IDEA 2025.1.
Среди нововведений — поддержка Containerfile и обновления для Dockerfile.
Читать: https://habr.com/ru/companies/spring_aio/articles/876112/?utm_campaign=876112
@a_cup_of_java | Другие наши каналы
Команда Spring АйО рада поделиться с новостью от JetBrains: стала доступна вторая версия EAP IntelliJ IDEA 2025.1.
Среди нововведений — поддержка Containerfile и обновления для Dockerfile.
Читать: https://habr.com/ru/companies/spring_aio/articles/876112/?utm_campaign=876112
@a_cup_of_java | Другие наши каналы
👍5🎉2
JSpinner: меньше багов, больше стрелочек
Привет, Хабр!
Сегодня поговорим про JSpinner — инструмент, который может показаться чем‑то простым и заурядным. Но это только на первый взгляд. На деле он может стать мастхев инструментом в разработке удобного и надёжного интерфейса.
JSpinner — это компонент для выбора значений из заранее заданной последовательности. Цифры, строки, даты — всё, что душе угодно. И его главная фича — минимизация ошибок: пользователь выбирает значения, а не вводит их вручную.
Читать: https://habr.com/ru/companies/otus/articles/875806/?utm_campaign=875806
@a_cup_of_java | Другие наши каналы
Привет, Хабр!
Сегодня поговорим про JSpinner — инструмент, который может показаться чем‑то простым и заурядным. Но это только на первый взгляд. На деле он может стать мастхев инструментом в разработке удобного и надёжного интерфейса.
JSpinner — это компонент для выбора значений из заранее заданной последовательности. Цифры, строки, даты — всё, что душе угодно. И его главная фича — минимизация ошибок: пользователь выбирает значения, а не вводит их вручную.
Читать: https://habr.com/ru/companies/otus/articles/875806/?utm_campaign=875806
@a_cup_of_java | Другие наши каналы
❤1
Как писать связующий код без Java-делегатов в Camunda Cloud
Бернд Рюкер рассказывает о о преимуществах использования паттерна external task по сравнению с JavaDelegate и уверяет, что это совсем не больно. А если вы хотите использовать standalone-движок, то в общем-то у вас нет выбора, только external task.
Читать: https://habr.com/ru/articles/876030/?utm_campaign=876030
@a_cup_of_java | Другие наши каналы
Бернд Рюкер рассказывает о о преимуществах использования паттерна external task по сравнению с JavaDelegate и уверяет, что это совсем не больно. А если вы хотите использовать standalone-движок, то в общем-то у вас нет выбора, только external task.
Читать: https://habr.com/ru/articles/876030/?utm_campaign=876030
@a_cup_of_java | Другие наши каналы
🥰3
PVS-Studio в 2024 году
За окном январь 2025 года, а это значит, пора подвести итоги за 2024 год! В этой статье вы узнаете, чем занималась команда PVS-Studio в прошлом году: новые плагины, интеграции, фичи и многое другое!
Читать: https://habr.com/ru/companies/pvs-studio/articles/876410/?utm_campaign=876410
@a_cup_of_java | Другие наши каналы
За окном январь 2025 года, а это значит, пора подвести итоги за 2024 год! В этой статье вы узнаете, чем занималась команда PVS-Studio в прошлом году: новые плагины, интеграции, фичи и многое другое!
Читать: https://habr.com/ru/companies/pvs-studio/articles/876410/?utm_campaign=876410
@a_cup_of_java | Другие наши каналы
Демистификация размеров объектов в Java: компактные заголовки, сжатые указатели и многое другое
Понимание размера объектов в Java — важный шаг для оптимизации памяти в высоконагруженных системах.
В новом переводе от команды Spring АйО вы узнаете про использование HotSpot JVM таких механизмов, как сжатые указатели (Compressed Oops) и компактные заголовки объектов (Compact Object Headers), необходимых для минимизации объема занимаемой памяти.
Читать: https://habr.com/ru/companies/spring_aio/articles/876352/?utm_campaign=876352
@a_cup_of_java | Другие наши каналы
Понимание размера объектов в Java — важный шаг для оптимизации памяти в высоконагруженных системах.
В новом переводе от команды Spring АйО вы узнаете про использование HotSpot JVM таких механизмов, как сжатые указатели (Compressed Oops) и компактные заголовки объектов (Compact Object Headers), необходимых для минимизации объема занимаемой памяти.
Читать: https://habr.com/ru/companies/spring_aio/articles/876352/?utm_campaign=876352
@a_cup_of_java | Другие наши каналы
Прагматичное функциональное программирование в Java
Прагматичное функциональное программирование в Java при помощи монады
...
Читать: https://habr.com/ru/articles/876736/?utm_campaign=876736
@a_cup_of_java | Другие наши каналы
Прагматичное функциональное программирование в Java при помощи монады
XResult<t, которая сочетает в себе свойства Optional<t, Result<t и Either<l,r...
Читать: https://habr.com/ru/articles/876736/?utm_campaign=876736
@a_cup_of_java | Другие наши каналы
🎉2
Топ 26 тем для интервью по Java в 2025 году
Готовитесь к интервью по Java? Узнайте, какие темы наиболее актуальны для собеседований в 2025 году. Наиболее востребованы: основы Java, ООП, многопоточность, сборка мусора и внутренности JVM. Подбирайте подготовку в соответствии с опытом работы и требованиями вакансии. Подготовка к интервью Java-разработчика
Текст: Планируете собеседование на позицию Java-разработчика? Изучите ключевые темы: многопоточность, фреймворки Spring и Hibernate, безопасность. Исследуйте ресурсы с вопросами и ответами по Java и веб-разработке, а также курсы для углубленного изучения. 🎓 Гид по подготовке к интервью по Spring
Ищете ресурсы для подготовки к интервью по Spring? Ознакомьтесь с подборкой вопросов и курсов по Spring Boot, Spring Cloud и Spring MVC. Это поможет вам укрепить знания в области микросервисов и аннотаций. Подпишитесь на обновления, чтобы не пропустить новинки!
Подробности: https://www.java67.com/2024/08/26-best-java-topics-for-interviews-in.html
#en
@a_cup_of_java | Другие наши каналы
Готовитесь к интервью по Java? Узнайте, какие темы наиболее актуальны для собеседований в 2025 году. Наиболее востребованы: основы Java, ООП, многопоточность, сборка мусора и внутренности JVM. Подбирайте подготовку в соответствии с опытом работы и требованиями вакансии. Подготовка к интервью Java-разработчика
Текст: Планируете собеседование на позицию Java-разработчика? Изучите ключевые темы: многопоточность, фреймворки Spring и Hibernate, безопасность. Исследуйте ресурсы с вопросами и ответами по Java и веб-разработке, а также курсы для углубленного изучения. 🎓 Гид по подготовке к интервью по Spring
Ищете ресурсы для подготовки к интервью по Spring? Ознакомьтесь с подборкой вопросов и курсов по Spring Boot, Spring Cloud и Spring MVC. Это поможет вам укрепить знания в области микросервисов и аннотаций. Подпишитесь на обновления, чтобы не пропустить новинки!
Подробности: https://www.java67.com/2024/08/26-best-java-topics-for-interviews-in.html
#en
@a_cup_of_java | Другие наши каналы
Docker — все в одной «коробке»
Представь себе ситуацию, когда для включения компа тебе понадобилось бы отдельно включать монитор, клавиатуру, мышку, колонки и с толкача заводить БП в коробке с материнской платой. Так себе история. А так, нажал кнопку и всё включилось. С кодом можно сделать то же самое — собрать все под один “включатель” — Docker.
Читать: https://habr.com/ru/articles/876754/?utm_campaign=876754
@a_cup_of_java | Другие наши каналы
Представь себе ситуацию, когда для включения компа тебе понадобилось бы отдельно включать монитор, клавиатуру, мышку, колонки и с толкача заводить БП в коробке с материнской платой. Так себе история. А так, нажал кнопку и всё включилось. С кодом можно сделать то же самое — собрать все под один “включатель” — Docker.
Читать: https://habr.com/ru/articles/876754/?utm_campaign=876754
@a_cup_of_java | Другие наши каналы
👍1
Гайд по подготовке к собеседованию для Backend-разработчиков
Недавно я провёл своё 40-е собеседование в Booking.com, где оцениваю кандидатов по кодингу, системному дизайну и код‑ревью. Я хорошо понимаю ожидания от кандидатов на разные уровни: core developer, senior developer и engineering manager. Эти знания могут быть полезны для тех, кто готовится к собеседованию в Booking.com или других крупных компаниях с аналогичной структурой.
Читать: https://habr.com/ru/articles/876808/?utm_campaign=876808
@a_cup_of_java | Другие наши каналы
Недавно я провёл своё 40-е собеседование в Booking.com, где оцениваю кандидатов по кодингу, системному дизайну и код‑ревью. Я хорошо понимаю ожидания от кандидатов на разные уровни: core developer, senior developer и engineering manager. Эти знания могут быть полезны для тех, кто готовится к собеседованию в Booking.com или других крупных компаниях с аналогичной структурой.
Читать: https://habr.com/ru/articles/876808/?utm_campaign=876808
@a_cup_of_java | Другие наши каналы
Java для Sega Mega Drive — возможно ли это?
В этом проекте я хотел ответить на вопрос: возможно ли написать игру на Java для Sega Mega Drive/Genesis. Не хочу раскрывать спойлеры, но ответом будет «да».
Несколько лет назад я повстречал проект Java Grinder, который позволяет писать код для различных ретро процессоров на Java, в том числе для Sega Mega Drive. По сути, он интерпретирует байт-код из файлов .class, полученных после компиляции, в код на Ассемблере 68K. Если файлу класса нужны другие файлы классов, то они тоже считываются и обрабатываются. Все вызовы методов API записываются в выходном коде, либо как встроенный ассемблерный код, либо как вызовы предварительно написанных функций, выполняющих свою задачу.
Читать: https://habr.com/ru/articles/876728/?utm_campaign=876728
@a_cup_of_java | Другие наши каналы
В этом проекте я хотел ответить на вопрос: возможно ли написать игру на Java для Sega Mega Drive/Genesis. Не хочу раскрывать спойлеры, но ответом будет «да».
Несколько лет назад я повстречал проект Java Grinder, который позволяет писать код для различных ретро процессоров на Java, в том числе для Sega Mega Drive. По сути, он интерпретирует байт-код из файлов .class, полученных после компиляции, в код на Ассемблере 68K. Если файлу класса нужны другие файлы классов, то они тоже считываются и обрабатываются. Все вызовы методов API записываются в выходном коде, либо как встроенный ассемблерный код, либо как вызовы предварительно написанных функций, выполняющих свою задачу.
Читать: https://habr.com/ru/articles/876728/?utm_campaign=876728
@a_cup_of_java | Другие наши каналы
🔥4
Spring News Roundup: Milestone Releases of Boot, Framework, Data, Security, Integration, Modulith
There was a flurry of activity in the Spring ecosystem during the week of January 20th, 2025, highlighting milestone releases of: Spring Boot, Spring Framework, Spring Data, Spring Security, Spring Integration and Spring Modulith.
By Michael Redlich
Read: https://www.infoq.com/news/2025/01/spring-news-roundup-jan20-2025/
@a_cup_of_java | Другие наши каналы
There was a flurry of activity in the Spring ecosystem during the week of January 20th, 2025, highlighting milestone releases of: Spring Boot, Spring Framework, Spring Data, Spring Security, Spring Integration and Spring Modulith.
By Michael Redlich
Read: https://www.infoq.com/news/2025/01/spring-news-roundup-jan20-2025/
@a_cup_of_java | Другие наши каналы
Как тестировать бизнес-процессы в Camunda: пошаговый гайд
На один из процессов я разработала почти 150 тестов. В статье показываю и рассказываю, как тестировать в Camunda.
Читать: https://habr.com/ru/companies/clevertec/articles/876264/?utm_campaign=876264
@a_cup_of_java | Другие наши каналы
На один из процессов я разработала почти 150 тестов. В статье показываю и рассказываю, как тестировать в Camunda.
Читать: https://habr.com/ru/companies/clevertec/articles/876264/?utm_campaign=876264
@a_cup_of_java | Другие наши каналы