Java Developer
15.7K subscribers
1.93K photos
146 videos
8 files
2.19K links
Авторский канал действующего разработчика — интересные заметки, новые технологии, библиотеки и фреймворки

Сотрудничество: @bape_ads
Прайс: @bape_media

РКН: https://clck.ru/3GHfTK

Реклама на бирже: https://telega.in/c/java_tg
Download Telegram
🔖 Быстрый инструмент для работы с API, работающий прямо в браузере

Он не грузит систему и делает всё, что должен: отправляет запросы, сохраняет историю, поддерживает GraphQL, WebSocket и даже MQTT.

Сервис полностью бесплатный, с открытым кодом и приятным интерфейсом — отличная альтернатива для Postman.

Ссылка на сайт — тут, исходный код — на GitHub.

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥1
🔖 Наглядная шпаргалка по HTTP-запросам

Коротко и наглядно показывает, чем отличаются основные HTTP-методы, когда использовать GET, POST, PUT, PATCH и DELETE, и какие ответы от сервера при этом ожидать.

Сохраняйте, чтобы не потерять!

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93🔥2
Вопрос с собеседования

Где следует хранить бизнес-логику в приложении?

Ответ: Бизнес-логику следует размещать в отдельном слое приложения — в сервисах, доменных моделях или специализированных workflow. Это позволяет отделить правила и поведение системы от инфраструктуры и интерфейсов, упрощает тестирование и делает код масштабируемым.

В подходах вроде DDD бизнес-логика концентрируется внутри доменных сущностей и агрегатов, в более классических архитектурах — в сервисных классах. Ключевой принцип — не размещать бизнес-логику в контроллерах, обработчиках запросов или слоях доступа к данным.


tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥1
👩‍💻 Как за 15 минут превратить таблицы БД в JPA-сущности?

В статье рассматривается процесс быстрого преобразования таблиц базы данных в JPA-сущности с помощью инструмента Amplicode.

Автор подробно описывает, как учитывать ограничения, индексы, свойства столбцов и ассоциативные связи для создания точных и эффективных JPA-моделей.

Читать статью

tags: #статья

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍1🔥1
Вопрос с собеседования

Как принудительно запустить поток?

Ответ: Никак — в Java нет способа напрямую заставить поток выполниться в нужный момент. Планирование выполняется планировщиком потоков JVM и зависит от операционной системы, а разработчику доступно только создание (start()) и синхронизация работы потоков.

tags: #собеседование

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🤔1
👩‍💻 Hot reload секретов под нагрузкой в Java-сервисах

В статье рассматривается реализация горячей перезагрузки секретов в Java-сервисах на Spring без перезапуска приложения.

Автор объясняет, как с помощью WatchService отслеживать изменения сертификатов и учетных данных, чтобы автоматически обновлять их в работающем сервисе.

Читать статью

tags: #статья

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥1
Что выведет код сверху?
Anonymous Quiz
2%
0
44%
1
34%
2
2%
null
18%
Ошибка компиляции
😁15🔥3🤔2
Git_Cheatsheet.pdf
306.4 KB
👩‍💻 Удобная шпаргалка для эффективной работы с Git

Это структурированный справочник, внутри которого множество команд:
1. Настройка Git (конфигурация);

2. Создание новых проектов;

3. Изменение, добавление и удаление файлов в репозитории;

4. Слияние веток (merging);

5. Коммиты и другие полезные команды под рукой.


tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1
Вопрос с собеседования

Как устроена архитектура брокеров в Kafka?

Ответ: В Kafka каждая партиция топика имеет лидера — брокера, который обрабатывает все запросы на запись и (по умолчанию) чтение. Остальные брокеры, содержащие копии этой партиции, называются фолловерами. Все реплики партиции (включая лидера) формируют группу ISR (in-sync replicas).

Данные всегда пишутся в лидера, который затем асинхронно реплицирует их фолловерам. Если лидер выходит из строя, Kafka автоматически выбирает нового из числа ISR. Это обеспечивает отказоустойчивость, хотя при смене лидера возможна кратковременная задержка в обслуживании.


tags: #собеседование

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
🖥 Огромная шпаргалка по командам Linux

Собрал удобный конспект базовых команд Linux — чтобы всегда был под рукой. Подойдёт и новичкам, и тем, кто периодически забывает синтаксис.

Файлик в хорошем качестве оставил в комментариях.

tags: #полезное #linux

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥2
Вопрос с собеседования

Какие основные принципы написания unit-тестов?

Ответ: Unit-тест проверяет одну небольшую единицу поведения и изолирует её от внешних зависимостей. В тесте должна быть чёткая структура: подготовка данных, выполнение действия, проверка результата. Тест обязан быть детерминированным, то есть давать один и тот же результат при повторных запусках, без зависимости от времени, случайности и окружения.

Хороший unit-тест читается как спецификация: понятное имя, минимум лишней подготовки, понятная причина падения. Он должен быть быстрым и не ходить в сеть, базу и файловую систему. Если зависимость неизбежна, её подменяют заглушкой или моками, проверяя либо результат, либо контракт взаимодействия, но не оба сразу без необходимости.


tags: #собеседование

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83🔥2
👩‍💻 Безопасность приложений: инструменты и практики для Java-разработчиков

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

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

Читать статью

tags: #статья

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Вопрос с собеседования

Где хранятся объекты?

Ответ: Все объекты, создаваемые через new, размещаются в куче (heap) — области памяти, управляемой сборщиком мусора. Ссылки на эти объекты могут храниться в стеке, если они являются локальными переменными внутри метода. Таким образом, объект — в куче, ссылка на него — в стеке.

tags: #собеседование

📱 Java Developer | Чат
Please open Telegram to view this post
VIEW IN TELEGRAM
11👍4🔥3
💻 Бесплатный инструмент для визуализации плана выполнения SQL-запросов

Просто вставляете EXPLAIN или EXPLAIN ANALYZE — и получаете понятное дерево выполнения запроса. Сразу видно, где запрос тормозит, какие индексы не используются, где начинается Full Table Scan и какие джойны работают неэффективно.

Удобный способ быстро понять, что именно не так с запросом, без ковыряния в сухом выводе EXPLAIN — забираем тут.

tags: #полезное

📱 Java Developer | 📲 MAX
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6