Чашечка Java
8.57K subscribers
3.88K photos
13 videos
56 files
6.33K links
Лучшие материалы по Java на русском и английском

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels
Download Telegram
Реализация гексагональной архитектуры на Java

В данной статье рассматривается архитектура проекта, позволяющая модульным образом интегрировать инфраструктурные фреймворки, такие как Spring, Quarkus и Micronaut, без необходимости модификации ядра предметной области (domain) или внешних API.


Читать: https://habr.com/ru/articles/985156/?utm_campaign=985156

@a_cup_of_java | Другие наши каналы
Project Panama: как Java научилась говорить на C! (Часть 1)

Как безопасно и эффективно вызывать C-функции из Java? Благодаря Project Panama — новому API из OpenJDK — это стало возможно без использования JNI.

В новом переводе от команды Spring АйО познакомимся с основами FFM API, посмотрим на запуск Hello World на C, роль jextract, и на то, как управлять памятью вне кучи JVM.


Читать: https://habr.com/ru/companies/spring_aio/articles/985144/?utm_campaign=985144

@a_cup_of_java | Другие наши каналы
1👌1
Project Panama: как Java научилась говорить на C! (Часть 1)

Как безопасно и эффективно вызывать C-функции из Java? Благодаря Project Panama — новому API из OpenJDK — это стало возможно без использования JNI.

В новом переводе от команды Spring АйО познакомимся с основами FFM API, посмотрим на запуск Hello World на C, роль jextract, и на то, как управлять памятью вне кучи JVM.


Читать: https://habr.com/ru/companies/spring_aio/articles/985144/?utm_campaign=985144

@a_cup_of_java | Другие наши каналы
🐳2
Осознанная стоимость абстракций: Autoboxing в современной Java

Мы живём во времена, когда на оперативной памяти для heap Java-приложений почти не экономят, а архитектурные решения, которые ещё недавно можно было назвать расточительными, всё чаще воспринимаются как best practices.

Но не все коту масленица. Благодаря AI - буму, облачным вычислениям и микросервисной архитектуре с сотнями одновременно работающих инстансов, мы можем воочию наблюдать неукротимый рост стоимости оперативной памяти, что обязывает вернуться к рассмотрению принципов её экономии.

В этих условиях привычные абстракции требуют переоценки.

Сегодня я хочу напомнить об одной из самых распространенных в Java — autoboxing — механизме автоматической упаковки примитивных типов в соответствующие объекты-обертки.

Приглашаю вас посмотреть на знакомый Java-код не глазами разработчика, а глазами JVM, сборщика мусора и процессора, и разобраться, как незаметные на уровне синтаксиса решения превращаются в аллокации, давление на GC и раздувание heap.
Погрузиться

Читать: https://habr.com/ru/articles/985620/?utm_campaign=985620

@a_cup_of_java | Другие наши каналы
🔥1
Как снизить хвостовые задержки в Java с помощью ZGC

Хвостовые задержки в Java часто упираются не в «среднее время ответа», а в редкие, но болезненные выбросы на p999. В статье сравним G1 и ZGC на прикладном бенчмарке микросервиса (Quarkus + Postgres) и на синтетической нагрузке с высокой скоростью аллокаций: где ZGC действительно срезает хвосты почти без пауз — и в каких условиях, упираясь в CPU, он начинает «тормозить» через приостановки аллокаций.
Читать разбор

Читать: https://habr.com/ru/companies/otus/articles/986604/?utm_campaign=986604

@a_cup_of_java | Другие наши каналы
🔥1
Внедряем Testcontainers за два дня или как перестать бояться рефакторинга и начать доверять своим тестам

Надоело, когда после сотни зеленых unit-тестов приложение падает на тестовом стенде? Когда рефакторинг превращается в кошмар из-за необходимости переписывать полсотни тестовых классов? Мне тоже надоело и я нашел решение. В статье покажу, как за два-три рабочих дня внедрить Testcontainers и начать писать тесты, которые действительно работают. В докладе вы найдете production-ready решение с PostgreSQL, Kafka и WireMock, которое выявит реальные проблемы еще до деплоя, честное тестирование реального поведения приложения.


Читать: https://habr.com/ru/articles/986870/?utm_campaign=986870

@a_cup_of_java | Другие наши каналы
2🔥1
JVM ещё жива, но уже бесполезна: как Netflix научился убивать её по GC

Вместо того чтобы ждать, пока Java-приложение окончательно "зависнет" из-за GC, инженеры Netflix сделали jvmquake — инструмент, который сам определяет, что JVM уже не спасти, вызывает дамп памяти и аккуратно завершает процесс. Меньше тревог, больше аптайма.

Подробности - в новом переводе от команды Spring АйО.


Читать: https://habr.com/ru/companies/spring_aio/articles/987116/?utm_campaign=987116

@a_cup_of_java | Другие наши каналы
🔥1
Soft-, Weak-, Final- и PhantomReference в Java

В статье представлены сведения о классах пакета java.lang.ref - SoftReference, WeakReference, PhantomReference и др. Описываются приёмы их применения.


Читать: https://habr.com/ru/articles/987362/?utm_campaign=987362

@a_cup_of_java | Другие наши каналы
Observability-as-Code в Spring Boot: Контракты и тесты для метрик, логов и трейсов

Observability-as-Code - это подход, при котором базовые элементы наблюдаемости (метрики, логи, трассировки) описываются и проверяются так же строго, как и код самого приложения. Эта информация хранится в VCS и к ней выдвигаются такие же требования, как “остальному коду”. Инженеры явно описывают "контракт" наблюдаемости (какие метрики и логи должна выдавать система, с какими свойствами), снабжают этот контракт автоматическими тестами и включают проверки в процесс CI/CD.

В данной публикации мы подробно разберем, почему такой подход эффективен, и как его реализовать в Spring Boot с использованием Micrometer, OpenTelemetry и инструментов вроде ArchUnit.


Читать: https://habr.com/ru/companies/spring_aio/articles/987358/?utm_campaign=987358

@a_cup_of_java | Другие наши каналы
1
Почему Kotlin ломает JPA

Используешь Kotlin с Jakarta Persistence и думаешь, что всё работает? Возможно, до первой неожиданной ошибки. data class, val, final-классы и даже значения по умолчанию — всё это может тайно мешать корректной работе JPA. Вместе с Торбеном Янссеном в новом переводе от команды Spring АйО разберем скрытые ловушки и показывают, как настроить проект правильно, чтобы не наступить на мину.


Читать: https://habr.com/ru/companies/spring_aio/articles/987890/?utm_campaign=987890

@a_cup_of_java | Другие наши каналы
Как мы перевели сервисы Java с виртуальных машин в Kubernetes

Статья: «Как мы перевели сервисы Java с виртуальных машин в Kubernetes»
В этой статье я разберу наш путь от VM к Kubernetes: какие задачи решали, как настраивали пайплайны, с какими сложностями столкнулись и какие плюсы в итоге получили.


Читать: https://habr.com/ru/companies/alfastrah/articles/988306/?utm_campaign=988306

@a_cup_of_java | Другие наши каналы
11 топовых библиотек и фреймворков для Java в 2025 году

Топ библиотек и фреймворков Java 2025: Spring Boot, Hibernate, JUnit, Micronaut, Quarkus. Практические советы от Senior и Lead разработчиков.

Читать: «11 топовых библиотек и фреймворков для Java в 2025 году»

@a_cup_of_java | Другие наши каналы
Как изменить код работающего Java-приложения? Пишем свой HotSwap

Практический разбор создания Java-агента для модификации байт-кода на лету. Как использовать Attach API, Instrumentation и Byte Buddy, чтобы изменить поведение работающего приложения. Подробно о реализации и ошибках.

Читать: «Как изменить код работающего Java-приложения? Пишем свой HotSwap»

@a_cup_of_java | Другие наши каналы
Apple выпустила Swift SDK для написания Android-приложений — спустя 11 лет после релиза языка

Apple выпустила Swift SDK для Android — теперь на Swift можно писать нативные Android-приложения и переносить код между платформами

Читать: «Apple выпустила Swift SDK для написания Android-приложений — спустя 11 лет после релиза языка»

@a_cup_of_java | Другие наши каналы
Инженер реализовал завирусившийся XKCD-комикс про зависимости ПО

Инженер создал Stacktower — интерактивную версию культового XKCD-комикса, показывающую, как одна зависимость может «обрушить» все приложение

Читать: «Инженер реализовал завирусившийся XKCD-комикс про зависимости ПО»

@a_cup_of_java | Другие наши каналы
3
Java: 15 самых популярных докладов 2025 года на YouTube

От базовой прокачки производительности до работы с ИИ и данными. Все доклады доступны бесплатно на YouTube

Читать: «Java: 15 самых популярных докладов 2025 года на YouTube»

@a_cup_of_java | Другие наши каналы
2
Forwarded from Типичный программист
This media is not supported in your browser
VIEW IN TELEGRAM
Ну и еще немного про ИИ! 😁

Одни компании недолюбливают нейросети за риск утечки конфиденциальной информации. Судя по комменту к предыдущему посту вы тоже от него устали 🤪 Но каким-то образом у разных компаний получается приручить эту химеру и выуживать из нее пользу.

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

Главный стоппер был предсказуем: как заставить прожорливые модели стабильно работать в облаке под нагрузкой? Решение оказалось элегантным.

Это девятый артефакт — для тех, кто побаивается нейросетей, но явно на них облизывается. Покажите вашему начальнику, скажите, что все не так страшно 👻
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Типичный программист
Победителями премии Тпрогер 🐀становятся...

Здесь играет барабанная дробь и интригующая музыка... Вам нужно только выждать драматическую паузу перед объявлением победителей — в каждой номинации он один, и определяется большинством голосов. Готовы?

В номинации «Продукт года» золотая мышь достается компании:
🐀NetVision за платформу интеллектуального мониторинга СИМ.

В номинации «Облачный продукт года» побеждает компания:
🐀Гравитон с паком виртуализации «Гелиус»

Звание «IT-ивент года» вручается компании:
🐀Островок! за О!Хакатон

И в категории «Дизайн года» первое место занимает компания:
🐀AcademiaDev за интерактивную инсталляцию.

Каждый ваш лайк, голос влияли на исход премии. Давайте поддержим всех — ставьте 🏆участникам, которые хоть и не заняли призового места, но точно остались в сердечке.
И 🔥, если хотите аналогичных активностей и готовы выбирать еще!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM