Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Что делают команды git push и git pull?
Команда git push отправляет ваши локальные изменения в удаленный репозиторий. Команда git pull скачивает изменения из удаленного репозитория и объединяет их с вашей локальной версией.
Почему мы делаем git pull, а затем git push?
Мы делаем git pull, чтобы сначала синхронизировать наш локальный репозиторий с последними изменениями из удаленного. Затем выполняем git push, чтобы отправить свои изменения. Это помогает избежать конфликтов и сохранить согласованность данных между участниками команды.
Чем отличается replace от push при использовании useNavigate?
Метод push добавляет новый маршрут в историю браузера, что позволяет вернуться назад. Метод replace заменяет текущий маршрут, не сохраняя его в истории, что предотвращает возврат на предыдущую страницу.
Что такое оператор $push в MongoDB и как он работает?
Оператор $push в MongoDB используется для добавления элементов в массив в документе. Он добавляет указанное значение или значения в конец массива. Пример использования:
db.collectionName.update({ _id: ObjectId("documentId") }, { $push: { fieldName: valueToPush } })Что такое оператор $addToSet в MongoDB и чем он отличается от $push?
Оператор $addToSet добавляет значение в массив, только если его нет в этом массиве, предотвращая дубли. В отличие от него, оператор $push добавляет элемент в массив без проверки на дубли.
Как реализовать push‑уведомления в сервисе? Опиши архитектуру этой системы.
В чём разница между push и pull моделями?
Как в Kafka и RabbitMQ воркер узнает о новом сообщении (push vs pull)?
Как можно протестировать push-уведомление, которое должно приходить в 12 часов ночи?
В каких случаях стоит использовать WebSocket?
Рейтинг:
1
Сложность:
8
Архитектура push‑уведомлений включает: сервис событий (генератор событий), брокер (Kafka/Redis Streams) для буферизации, Notification Service для формирования payload, адаптеры (FCM, APNS, Web Push) и клиентские SDK для регистрации токенов. Клиент регистрирует токен, сервер публикует событие, Notification Service читает из брокера и отправляет через соответствующий адаптер.
Рейтинг:
1
Сложность:
6
Push: Сервер отправляет данные клиенту автоматически (например, WebSocket).
Pull: Клиент сам запрашивает данные (например, HTTP, Kafka).
Рейтинг:
2
Сложность:
7
В RabbitMQ брокер push-ит сообщения потребителям. В Kafka потребители pull-ят сообщения из брокера. Push модель может перегрузить потребителя, pull модель дает больше контроля над скоростью обработки.
Рейтинг:
2
Сложность:
6
Для тестирования push-уведомлений в конкретное время можно использовать эмуляцию времени на устройстве или в среде разработки. Например, в Android Studio можно изменить системное время эмулятора, а в iOS — настроить триггеры через Xcode. Также полезно писать unit-тесты, которые имитируют срабатывание уведомлений в заданное время.
Рейтинг:
4
Сложность:
6
WebSocket стоит использовать, когда клиенту нужны быстрые обновления данных без постоянных запросов к серверу. Он подходит для сценариев с реальным временем: чаты, уведомления, онлайн-статусы, совместное редактирование. Соединение устанавливается один раз и используется для двустороннего обмена. Это снижает задержки и сетевые накладные расходы по сравнению с polling.
Рейтинг:
1
Сложность:
3
Рейтинг:
2
Сложность:
4
Рейтинг:
2
Сложность:
4
Рейтинг:
2
Сложность:
5
Рейтинг:
2
Сложность:
7