TGViewer
Channel Public Channel
Java guru

Java guru

@java_guru

Новости из мира Java, обзоры интересных библиотек и фреймворков, обучающие статьи. Онлайн обсуждения актуальных тем и обмен опытом. Для связи @RodmanDV
ry-12537748218192955366
Subscribers
923
Photos
1
Videos
1
Links
270

Showing posts older than #198 · Back to latest

Older Posts 20 shown
Post #197 6.13K
Красивый код с Optional и Either

Класс Optional хорошо подходит для ситуаций с отсутствующим значением как прекрасная альтернатива использованию null, но что делать если мы хотим в таких случаях возвращать разные объекты? Например если мы хотим работать с исключениями в функциональном стиле?

Есть несколько библиотек решающих эту задачу: vavr, fugue, lambda и either.

Either самая легковесная из них и детали работы с ней рассмотрены в статье.

https://dzone.com/articles/the-beauty-of-java-optional-and-either
DZone The Beauty of Java Optional and Either Many Java developers often overlook its functional programming capabilities. Learn how to chain Optional and Either to write concise and beautiful code.
  • 🔥 5
Post #196 3.87K
System Design 101

Во многих компаниях на собеседованиях senior разработчиков этап System Design становится обязательным. В шпаргалке на высоком уровне рассматриваются такие вещи, как протоколы коммуникации, DevOps, CI/CD, архитектурные паттерны, базы данных, кэширование, микросервисы (и монолиты), платежные системы, Git, облачные сервисы etc. Особую ценность представляют диаграммы.

https://habr.com/ru/articles/770564/
  • 🔥 7
Post #195 4.09K
Опять транзакции…

Транзакция нужна когда у нас есть несколько операций, которые меняют данные в БД. В противном случае смысла в ней никакого нет и база сама откроет и закроет транзакцию внутри себя, без дополнительных указаний извне. Речь в данной статье будет идти о клиентском управлении транзакциями, через аннотацию Spring @Transactional и базу Postgres.

https://habr.com/ru/articles/803395
  • 👍 7
Post #193 4.75K
Всё ещё используете If/else валидацию в Spring 6.0+ / SpringBoot 3.0+?

В статье рассмотрены аннотации @Valid, и @Validated, которые используются для запуска процесса валидации при обработке запроса в Spring.

@Valid — это стандартная аннотация из спецификации Java Bean Validation, также известной как JSR-303.

@Validated — это специфическая для Spring аннотация, предоставляемая самим Spring.

https://habr.com/ru/companies/otus/articles/799987/
  • 👍 4
  • 🔥 2
Post #192 4.17K
Пару дней назад вышла Java 22

В этот релиз попало около 2300 закрытых задач и 12 JEP'ов. Release Notes можно посмотреть здесь. Полный список изменений API – здесь.

Из интересных фич лично для меня можно отметить:
1. String Templates (Second Preview) (JEP 459), которые, к сожалению, уходят на второй раунд preview без изменений.
2. Stream Gatherers (Preview) (JEP 461)
3. Class-File API (Preview) (JEP 457)
4. Structured Concurrency (Second Preview) (JEP 462), который тоже уходит на второй раунд preview без изменений.
5. Scoped Values (Second Preview) (JEP 464) тоже уходит на второй раунд preview без изменений.
6. Foreign Function & Memory API (JEP 454), которое наконец-то стабилизировалось!!!

https://habr.com/ru/articles/801467/
  • 👍 4
  • 🔥 3
Post #191 3.47K
Project Leyden: Capturing Lightning in a Bottle

Проект Laden позволяет сократить время запуска приложений как минимум в два раза. В докладе о том как можно оптимизировать старт приложения на 800% используя Leyden ))

https://youtu.be/NlJK5BKXtHI?si=sriIC7UYa30WzVIL
YouTube Project Leyden: Capturing Lightning in a Bottle Project Leyden aims to improve the startup time, warmup time, and footprint of Java applications by enabling developers to shift computation forward and backward in time. We’ll dive into what that means, how it could work, and review recent progress. Presented…
  • 🔥 3
Post #190 2.99K
Асинхронная работа с файловой системой в Vert.x

Vert.x – это экосистема для создания реактивных приложений на JVM, которые могут масштабироваться и обрабатывать огромные объемы данных в реальном времени. Одна из фич vert.x - это набор абстракций и API для асинхронной работы с сетью, файловой системой и другими ресурсами. С его помощью можно легко создавать масштабируемые веб-приложения, микросервисы, сетевые утилиты и многое другое.

https://habr.com/ru/companies/otus/articles/794484/
Хабр Асинхронная работа с файловой системой в Vert.x Vert.x – это экосистема для создания реактивных приложений на JVM, которые могут масштабироваться и обрабатывать огромные объемы данных в реальном времени. Это полиглотная платформа, поддерживающая не...
  • 🔥 3
Post #189 2.73K
How Netflix Really Uses Java

Выступление Пола Баккера (Paul Bakker) - чемпиона Java и разработчика в команде Java Platform в Netflix. Он рассказывает об использовании Java в Netflix, делая акцент на микросервисах, RxJava, Hystrix и Spring Cloud.


В Netflix он работает над развитием технологического стека Java и инструментов разработчика. Он также является одним из авторов фреймворка DGS (GraphQL) и соавтором двух книг по модульности Java, опубликованных O'Reilly.

P.S. Под видео есть транскрипт выступления.

https://www.infoq.com/presentations/netflix-java/
InfoQ How Netflix Really Uses Java Paul Bakker discusses Netflix’s use of Java, emphasizing the use of microservices, RxJava, Hystrix and Spring Cloud.
  • 🔥 4
  • 👍 2
Post #186 3.38K
Виртуальные потоки Java столкнулись с проблемой.

Команда Java в Oracle работает над устранением двух распространенных случаев, когда виртуальный поток паркуется или блокируется, а базовый нативный поток не освобождается.

https://www.infoworld.com/article/3713220/java-virtual-threads-hit-with-pinning-issue.html#tk.rss_java
InfoWorld Java virtual threads hit with pinning issue The Java team at Oracle is working to address two common cases in which a virtual thread parks or blocks and the underlying native thread is not released.
  • 😭 4
  • 😢 2
Post #185 3.82K
Тестирование Spring Security

В этой статье описано, как протестировать аутентификацию и авторизацию приложений Spring Boot. 

Spring Security хорошо интегрируется с фреймворками Spring Web MVC и Spring WebFlux. Он также имеет комплексную интеграцию с Spring MVC Test и Spring WebTestClient.

https://habr.com/ru/articles/795149/
Хабр Тестирование Spring Security Безопасность играет важную роль в программном обеспечении. В конечном итоге каждому необходимо повысить безопасность своего проекта. В этой статье мы рассмотрим, как протестировать...
  • 🔥 3
Post #184 3.47K
Гексагональная Архитектура и Spring Boot

Интересный опыт применения гексагональной архитектуры в одном микросервисе. Правда тема с entity в данном контексте раскрыта не полностью.

https://habr.com/ru/articles/795127/
  • 🔥 5
  • 👍 4
Post #183 2.73K
Вариантность обобщенных типов в картинках и простых примерах

В статье приведены неплохие схемы, но ей не хватает для полноты картины описания PECS и более сложных кейсов. Для новичков изучающих эту тему будет полезна. В целом мне понравилась описанная часть.

https://habr.com/ru/articles/795083/
Хабр Вариантность обобщенных типов в картинках и простых примерах Ковариантность, контравариантность, инвариантность В большинстве статей на тему вариантности авторы слишком быстро погружаются в детали и сложные схемы, из-за чего у людей которые только пытаются...
  • 🔥 3
Post #182 2.19K
Автоматизируем проверку содержимого PDF-файлов с помощью pdf-test

Задача на мой взгляд довольно редкая. Отсутствие поддержки таблиц не радует, но с другой стороны можно попробовать добавить самому и получить еще один плюс в карму за opensource ))

https://habr.com/ru/companies/simbirsoft/articles/794728/
Хабр Автоматизируем проверку содержимого PDF-файлов с помощью pdf-test Многие сервисы в различных отраслях генерируют печатные формы счетов, отчётов и прочего в формате PDF. И конечно, перед специалистами тестирования встаёт вопрос о проверке этих документов. Обычно...
  • 👍 5
Post #181 2.82K
Как разработчику организовать личную базу знаний: систематизация информации из книг, статей, видео и курсов

Я давно задумывался о подобной систематизации, но так комплексно к этому вопросу не подходил. Лично я предпочитаю AsciiDoc. Он гибче и богаче md, а также можно собирать все в удобный pdf. Для сборки можно использовать как консольную утилиту так и maven плагин, если оформить репозиторий как maven проект. По моей субъективной оценке проще структурировать в разных репозиториях информацию по разным топикам, но это наверное дело вкуса.

https://habr.com/ru/companies/lanit/articles/793444/
Хабр Как разработчику организовать личную базу знаний: систематизация информации из книг, статей, видео и курсов Привет, Хабр! Хочу поделиться своими мыслями и опытом («сыном ошибок трудных») в организации своей базы знаний, регулярно приобретаемых после прочтения разных книг, статей, просмотра видосов,...
  • 🔥 2
  • 🤪 1
Post #179 3.16K
Spring Boot. Реактивный асинхронный неблокирующий REST vs традиционный синхронный блокирующий

Статья конечно «однобокая», но новичкам для иллюстрации разницы синхронных и асинхронных запросов подойдет.

https://habr.com/ru/articles/793494/
  • 👍 3
Post #178 3.3K
Применение ООП на практике

Чаще всего задачу можно решить интуитивно понятным процедурным способом. Однако самый простой вариант не всегда самый лучший. Предлагаю посмотреть на примере реальной задачи, как можно сделать решение объектно-ориентированным, и какую пользу это может принести.

https://habr.com/ru/companies/pvs-studio/articles/793900/
  • 👍 2
  • 🔥 2
  • 🤣 1
Post #177 3.13K
Java Flight Recorder ожидает улучшения

В рамках проекта Skogsluft будут представлены продвинутые возможности профилирования Java приложений.

https://www.infoworld.com/article/3712811/java-flight-recorder-eyed-for-improvement.html#tk.rss_java
InfoWorld Advanced profiling proposed for Java Flight Recorder Skogsluft project would introduce profiling features that span Java and native code execution and provide more precise and flexible profiling options.
  • 🔥 5
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →