Специализация
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 в телеграм
Что такое refs и как они используются?
Refs (ссылки) в React используются для получения доступа к DOM-элементам или экземплярам классовых компонентов. Они позволяют управлять элементами напрямую, например, для фокусировки на инпуте или анимации, обходя обычный поток данных React.
Что такое пакет fs в Node.js и как он используется?
fs — это встроенный модуль Node.js, который предоставляет методы для работы с файлами и директориями, такие как чтение, запись, создание, удаление и изменение файлов. Он поддерживает как синхронные, так и асинхронные операции.
Как архитектура FSD соотносится с принципами SOLID?
FSD (Feature-Sliced Design) и SOLID решают схожие задачи – создание понятного и масштабируемого кода. Основные параллели:
Что такое FSD-архитектура? Какие слои использовали?
FSD делит проект на слои по бизнес-логике:
App — инициализация, роутинг.
Pages — страницы.
Features — фичи (например, авторизация).
Entities — бизнес-сущности (User, Product).
Shared — UI-кит, утилиты.
Какие проблемы с пагинацией через LIMIT OFFSET?
Пагинация через LIMIT OFFSET может быть неэффективной на больших смещениях, потому что база данных должна пропустить OFFSET строк перед возвратом результата, что требует времени и ресурсов. Кроме того, при изменении данных (добавлении/удалении) между запросами могут возникать пропущенные или дублированные строки.
Что такое курсорная пагинация и чем она лучше OFFSET?
Какие методологии организации проекта (FSD, Atomic Design) ты использовал? В чём их отличия?
Как правильно делать пагинацию в Postgres, чтобы избежать проблемы с OFFSET при больших данных?
В чём различие forward, forward+ и deferred рендеринга и какие у них trade-offs?
Какой опыт работы с AI-подходами: FSM, Behavior Trees, Utility AI, и когда что применять?
Рейтинг:
2
Сложность:
6
Курсорная пагинация — это метод пагинации, где вместо смещения (OFFSET) используется условие на основе значения последней строки предыдущей страницы (например, WHERE id > last_id). Она лучше OFFSET, потому что работает быстрее (не требует пропуска строк) и обеспечивает согласованность при изменении данных.
Рейтинг:
2
Сложность:
7
Atomic Design — это методология дизайна, которая делит интерфейс на иерархические уровни: атомы (кнопка, инпут), молекулы (поисковая строка = инпут + кнопка), организмы (шапка сайта), шаблоны и страницы. FSD (Feature-Sliced Design) — это архитектурная методология для frontend-проектов, которая фокусируется на организации папок по бизнес-логике: она делит код на слои (app, pages, features, entities, shared). Ключевое отличие: Atomic Design — это про компоненты, а FSD — про всю структуру проекта, включая логику, состояния и API.
Рейтинг:
4
Сложность:
7
OFFSET медленный, потому что Postgres всё равно сканирует строки до смещения. Решение — keyset pagination (по ключу): использовать WHERE id > last_id ORDER BY id LIMIT N.
Рейтинг:
5
Сложность:
8
Forward рендерит объект полностью за один проход, но ограничивает количество источников света и плохо подходит для сложных сцен. Deferred рендерит сначала буферы (нормали, глубину, альбедо), а затем освещение, что позволяет использовать сотни динамических источников света, но плохо работает с прозрачностью. Forward+ — модернизированный forward, использующий кластеризацию света и позволяющий иметь много источников света, сохранив преимущества Forward, но сложнее в реализации. Выбор зависит от сцены: много динамических Lights → Deferred, мобильные платформы → Forward, современные проекты с множеством Lights и хорошей прозрачностью → Forward+.
Рейтинг:
5
Сложность:
6
FSM используют для простых AI со структурированными состояниями. Behavior Trees удобны для сложного поведения и визуального редактирования. Utility AI нужен там, где решение зависит от множества факторов, и нужно динамически выбирать действие по «полезности». В реальных проектах подходы часто комбинируют: FSM как high-level режимы, внутри BT или Utility. Выбор зависит от сложности поведения и требований дизайна.
Рейтинг:
5
Сложность:
5
Рейтинг:
5
Сложность:
5
Рейтинг:
4
Сложность:
10
Рейтинг:
2
Сложность:
6
Рейтинг:
2
Сложность:
6