❤7
Opik — инструмент для отслеживания и анализа работы LLM: автоматизирует оценку, хранит тест-кейсы и интегрируется с CI/CD, упрощая разработку и деплой. Поддерживает локальный и облачный запуск, работает с OpenAI, LangChain и другими фреймворками.
tags: #полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Spring Boot DevTools отслеживает изменения в коде и конфигурации и автоматически перезапускает приложение.
Что это даёт:
• Авто-restart при изменении Java-классов;
• Моментальный рефреш «application.properties» и «application.yml»;
• Меньше ручных перезапусков — быстрее цикл «написал → проверил».
Под капотом используется механизм разделения classloader’ов, поэтому перезапуск происходит заметно быстрее, чем полный restart. Плюс DevTools автоматически отключает кэш шаблонов и включает более подробные логи — удобно при работе с Thymeleaf и другими view-движками.
Подключение через Maven:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
Важно: в production DevTools не попадает — зависимость с «runtime» и автоматически исключается при сборке production-jar.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4
Как принудительно запустить поток?
Ответ:
tags: #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤1
В данной статье автор рассуждает, почему проблемы производительности и странного поведения сервисов часто связаны не с отсутствием сложных алгоритмов, а с их неправильным применением.
tags: #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Чтобы не путаться в окружениях и не тащить dev в прод — держите компактный список best practices.
Сохраняйте и используйте.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
This media is not supported in your browser
VIEW IN TELEGRAM
Что внутри:
– Синтаксис и база языка;
– ООП и принципы проектирования;
– Коллекции, исключения, потоки;
– Работа с файлами и основами I/O;
– Примеры кода и объяснения простым языком;
Подойдёт новичкам и тем, кто хочет освежить фундамент перед собеседованием. Формат удобен как шпаргалка — можно быстро вернуться к нужной теме.
tags: #полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤4
Блог владельца «Java Developer»
Жизнь в Telegram и за его пределами, бизнес на каналах и много программирования:
https://t.me/+6LFfq_FDocc4MTg6
Жизнь в Telegram и за его пределами, бизнес на каналах и много программирования:
https://t.me/+6LFfq_FDocc4MTg6
Что такое Java Memory Model и зачем он нужен?
Ответ:
Без JMM многопоточные программы работали бы непредсказуемо: один поток мог бы не увидеть изменения другого. JMM определяет правила: когда изменения в кэше процессора становятся «видимыми» другим потокам, и как работает синхронизация.
tags: #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍2
В статье объясняется, почему Spring Data JPA может тормозить: рассматриваются причины вроде open-in-view, ленивой инициализации, неправильной настройки DataSource и медленных JOIN-ов.
Автор на примерах показывает, как выявить проблемные места и оптимизировать конфигурацию, чтобы избавиться от неожиданных лагов и блокировок.
tags: #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
В статье показано, как сократить число SQL-запросов при работе с Spring Data JPA и Hibernate: от устранения лишних
SELECT до борьбы с N+1.Автор на примерах разбирает, когда использовать
getReferenceById, @Version, fetch join и @DynamicUpdate, чтобы ускорить взаимодействие с базой и избежать скрытых тормозов.🔖 Предыдущая часть — КЛИК
tags: #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2
В статье рассказывается, как генерировать HTTP-клиенты для Spring Boot приложений с помощью OpenAPI и плагина openapi-generator для Gradle.
Автор показывает как сгенерировать код, настроить проект и интегрировать его с RestTemplate или WebClient.
tags: #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
В чём разница между @Bean и @Component в Spring?
Ответ:
tags: #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🤣3
Репозиторий best-system-design-resources — это аккуратно собранная подборка ресурсов по системному дизайну: книги, статьи, видео, курсы и разборы архитектур.
Что внутри:
▶ Основы: CAP-теорема, масштабирование, консистентность▶ Разбор ключевых компонентов: кэш, балансировка, шардирование, очереди▶ Примеры реальных систем: поисковики, видеохостинги, мессенджеры▶ Курсы и гайды: System Design Primer, Grokking, Gaurav Sen▶ Задачи и кейсы с интервью
Хорошая база, чтобы структурировать знания и увереннее разбираться в архитектуре крупных систем.
tags: #полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤2
Функциональный интерфейс — это интерфейс, который определяет только один абстрактный метод. Это позволяет передавать поведение как значение — например, в виде лямбды или ссылки на метод.
Рассмотрим простейший пример:
@FunctionalInterface
interface Greeting {
void say(String message);
}
Greeting g = msg -> System.out.println("Привет, " + msg);
g.say("мир!");
Аннотация @FunctionalInterface не обязательна, но рекомендуема — она защищает от случайного добавления лишнего абстрактного метода.
Интерфейс может содержать сколько угодно
default- и static-методов и при этом оставаться функциональным, так как они не считаются абстрактными.В Java предусмотрен набор стандартных функциональных интерфейсов — в пакете
java.util.function. Вот наиболее часто используемые:▶️ Predicate<T> — проверяет условие, возвращает true или false▶️ Function<T, R> — преобразует один тип в другой▶️ Consumer<T> — принимает значение, ничего не возвращает▶️ Supplier<T> — возвращает значение, ничего не принимает▶️ UnaryOperator<T> и BinaryOperator<T> — частные случаи Function, когда вход и выход одного типа
Пример использования Predicate:
Predicate<String> isLong = s -> s.length() > 5;
System.out.println(isLong.test("Java")); // false
Функциональные интерфейсы активно используются в Stream API, Optional, Comparator, CompletableFuture и других частях стандартной библиотеки. Это удобный способ описать поведение без лишнего кода.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14
Каждый, проходя интервью, думал: «Ну что они хотят услышать? Я же правильно ответил! Почему меня не взяли?»
4 марта(уже завтра!) в 19:00 по мск приходи онлайн на открытое интервью, где будут собеседовать МЕНТОРА ШОРТКАТ
Как это будет:
📂 Виктор Анохин, старший разработчик из WildBerries, будет задавать реальные вопросы и задачи старшему разработчику Сергею Чамкину
📂 Сергей будет отвечать на каждый вопрос так, как это ожидает сам от вас на собеседованиях
📂 В конце можно будет задать любой вопрос Сергею и Виктору
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot
Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM