⚡️ Алгоритмы на Java
В книге «Алгоритмы на Java» представлен широкий спектр рассматриваемых тем: исчерпывающее толкование структур данных и алгоритмов сортировки, поиска, обработки графов и строк, включая пятьдесят алгоритмов, которые должен знать каждый программист. Описываются новые реализации алгоритмов на Java, написанные в ясном модульном стиле, при котором весь код доступен читателю и полностью готов к использованию. В книге изучение алгоритмов на Java ведется в контексте важнейших научных, инженерных и коммерческих приложений. Клиенты и алгоритмы выражены с помощью реального кода, а не псевдокода, как во многих других книгах.
📖 Книга
#java
В книге «Алгоритмы на Java» представлен широкий спектр рассматриваемых тем: исчерпывающее толкование структур данных и алгоритмов сортировки, поиска, обработки графов и строк, включая пятьдесят алгоритмов, которые должен знать каждый программист. Описываются новые реализации алгоритмов на Java, написанные в ясном модульном стиле, при котором весь код доступен читателю и полностью готов к использованию. В книге изучение алгоритмов на Java ведется в контексте важнейших научных, инженерных и коммерческих приложений. Клиенты и алгоритмы выражены с помощью реального кода, а не псевдокода, как во многих других книгах.
📖 Книга
#java
❤8🔥2👍1
Шпаргалка по основам Java
Эта шпаргалка поможет освоиться в языке на старте обучения или просто освежить знания по какой-то базовой теме.
#шпаргалка #java #начинающим
Эта шпаргалка поможет освоиться в языке на старте обучения или просто освежить знания по какой-то базовой теме.
#шпаргалка #java #начинающим
❤8👍2🔥2👎1
Forwarded from Java
Команда Java отмечает это событие шестичасовым прямым эфиром, посвящённым эволюции языка, его глобальному влиянию и формированию его будущего.
💝 Поздравь коллегу
https://www.youtube.com/watch?v=LHHPbI7sYv8
@javatg
#Java #OpenJDK
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍4🔥3
🔒 Практическое руководство по тестированию безопасности Java-приложений — инструменты, примеры и команды.
✅ SCA (анализ ПО)
✅ SAST (статическое тестирование безопасности)
✅ DAST (динамическое тестирование безопасности)
✅ Penetration Testing (тестирование на проникновение)
👉 Подробности: https://ionutbalosin.com/2025/03/security-application-testing-for-java-developers
📦 Код и практики: https://github.com/ionutbalosin/java-application-security-practices
#Java #AppSec
✅ SCA (анализ ПО)
✅ SAST (статическое тестирование безопасности)
✅ DAST (динамическое тестирование безопасности)
✅ Penetration Testing (тестирование на проникновение)
👉 Подробности: https://ionutbalosin.com/2025/03/security-application-testing-for-java-developers
📦 Код и практики: https://github.com/ionutbalosin/java-application-security-practices
#Java #AppSec
❤5👍2🔥2
💡 Совет по Java: автоматизируй проверку архитектурных правил через тесты
Вместо того чтобы ловить нарушения код-стандарта на ревью, формализуй их прямо в юнит-тестах. DSL-подход (в духе ArchUnit / TAIKAI) позволяет описать ограничения читаемо и выполнять их при каждом сборочном цикле.
Плюсы подхода:
Быстрая обратная связь — CI сразу показывает, где правила нарушены.
Чёткая документация — правила читаемы прямо в коде, без вики-страниц.
Меньше рутины на ревью — обсуждаем дизайн, а не «почему здесь throws Exception».
Добавь такой тест-набор в проект и поддерживай кодовую базу в здоровом состоянии автоматически.
#Java #CodeQuality #ArchUnit #SpringBoot
@java_library
Вместо того чтобы ловить нарушения код-стандарта на ревью, формализуй их прямо в юнит-тестах. DSL-подход (в духе ArchUnit / TAIKAI) позволяет описать ограничения читаемо и выполнять их при каждом сборочном цикле.
@Test
void shouldFulfillConstraints() {
Taikai.builder()
.namespace("com.enofex.taikai") // выбранный пакет
.java(java -> java // правила для Java-кода
.noUsageOfDeprecatedAPIs() // запрет устаревших API
.methodsShouldNotDeclareGenericExceptions()// никаких throws Exception
.utilityClassesShouldBeFinalAndHavePrivateConstructors())
.logging(logging -> logging // единый стиль логгеров
.loggersShouldFollowConventions(
Logger.class, "logger",
EnumSet.of(PRIVATE, FINAL)))
.spring(spring -> spring // правила для Spring-слоя
.controllers(c -> c
.shouldBeAnnotatedWithRestController() // все контроллеры = REST
.shouldNotDependOnOtherControllers()))
.build()
.check(); // тест упадёт, если есть ошибка
}
Плюсы подхода:
Быстрая обратная связь — CI сразу показывает, где правила нарушены.
Чёткая документация — правила читаемы прямо в коде, без вики-страниц.
Меньше рутины на ревью — обсуждаем дизайн, а не «почему здесь throws Exception».
Добавь такой тест-набор в проект и поддерживай кодовую базу в здоровом состоянии автоматически.
#Java #CodeQuality #ArchUnit #SpringBoot
@java_library
👍10❤7👏4
☕ Java25 уже на подходе!
В свежем релизе — важные улучшения, о которых стоит знать каждому Java-разработчику:
🔹 JEP 502: Stable Values — новый способ работы со значениями, который делает код надёжнее и эффективнее.
🔹 JEP 514/515: Project Leyden — фокус на время запуска приложений и оптимизацию старта JVM.
📖 Подробный разбор:
https://softwaremill.com/jep-502-stable-values-new-feature-of-java-25-explained/
#Java #JEP #Leyden #Programming
В свежем релизе — важные улучшения, о которых стоит знать каждому Java-разработчику:
🔹 JEP 502: Stable Values — новый способ работы со значениями, который делает код надёжнее и эффективнее.
🔹 JEP 514/515: Project Leyden — фокус на время запуска приложений и оптимизацию старта JVM.
📖 Подробный разбор:
https://softwaremill.com/jep-502-stable-values-new-feature-of-java-25-explained/
#Java #JEP #Leyden #Programming
❤12👍2🔥1
🚀 Spring Boot Pro Tip: свой FailureAnalyzer
В Spring Boot можно перехватывать ошибки на этапе запуска и превращать их в понятные человеку сообщения. Для этого создан механизм FailureAnalyzer.
Зачем он нужен
- улучшает диагностику на старте приложения
- помогает быстро находить причины конфигурационных ошибок
- делает логирование чище и понятнее
Как работает
Вы создаёте свой класс, который анализирует исключение и возвращает читаемое описание проблемы и советы по исправлению.
Под капотом Spring Boot автоматически подцепит ваш анализатор и покажет дружелюбное сообщение вместо сырого stacktrace.
Документация:
https://docs.spring.io/spring-boot/how-to/application.html#howto.application.failure-analyzer
#SpringBoot #Java #FailureAnalyzer #Backend #DevTips
В Spring Boot можно перехватывать ошибки на этапе запуска и превращать их в понятные человеку сообщения. Для этого создан механизм FailureAnalyzer.
Зачем он нужен
- улучшает диагностику на старте приложения
- помогает быстро находить причины конфигурационных ошибок
- делает логирование чище и понятнее
Как работает
Вы создаёте свой класс, который анализирует исключение и возвращает читаемое описание проблемы и советы по исправлению.
Под капотом Spring Boot автоматически подцепит ваш анализатор и покажет дружелюбное сообщение вместо сырого stacktrace.
Документация:
https://docs.spring.io/spring-boot/how-to/application.html#howto.application.failure-analyzer
#SpringBoot #Java #FailureAnalyzer #Backend #DevTips
❤7👍4