P
prepair.app
Пройти интервью →
EnglishУкраїнськаРусскийDeutsch
🅰️

Middle Angular FrontendВопросы на собеседовании Angular

Middle · 2–4 года опыта

Собеседование Angular охватывает внедрение зависимостей, RxJS, change detection и TypeScript — фреймворк строгий, поэтому вопросы проверяют, понимаете ли вы его механику. Ниже — самые частые с эталонными ответами. Middle: более глубокое понимание, оптимизацию и реальные рабочие ситуации.

Попробовать — без регистрации
Готовим вопрос…

Темы для подготовки

Dependency Injection
RxJS и Observables
Change Detection
Модули и компоненты
Реактивные формы
TypeScript

6 вопросов уровня Middle с ответами

1

Как работает обнаружение изменений и что меняет OnPush?

Ответ

По умолчанию Angular проверяет каждый компонент дерева после всего, что могло изменить состояние. OnPush сужает это: компонент проверяется, только когда меняется ссылка во входе, внутри него происходит событие или испускает observable, читаемый через async. Проверка всего дерева превращается в точечную, и это крупнейший рычаг производительности в Angular.

2

Что делает Zone.js и почему Angular от него уходит?

Ответ

Он патчит асинхронные API браузера, чтобы Angular знал, когда что-то могло измениться, и запускал обнаружение изменений без вашего участия. Цена — он патчит всё и вызывает проверки на события, которые ничего не изменили. Сигналы позволяют компоненту знать точно, что изменилось, ради чего и взят курс на zoneless.

3

Что такое сигнал и чем он отличается от observable?

Ответ

Сигнал держит текущее значение и синхронно уведомляет зависимых при изменении — это состояние. Observable — поток во времени, он моделирует события. Сигналы подходят состоянию компонента и вычисляемым значениям; observable по-прежнему подходят HTTP, вебсокетам и всему, где нужны операторы. Они дополняют друг друга, а не заменяют.

4

Чем отличаются `switchMap`, `mergeMap` и `concatMap`?

Ответ

switchMap отменяет предыдущую внутреннюю подписку при новом значении — верно для подсказок в поиске, неверно для сохранения. mergeMap запускает всё параллельно и в порядке завершения. concatMap ставит в очередь и сохраняет порядок. Неверный выбор — это когда поиск показывает устаревший результат или два сохранения ложатся не в том порядке.

5

Что делает интерцептор и что в нём место?

Ответ

Он стоит между приложением и HttpClient и может менять запрос или ответ. Заголовки авторизации, идентификатор корреляции, общая политика повторов и превращение 401 в редирект — всё это его место, потому что применяется к каждому запросу, а дублирование по сервисам — способ однажды забыть. Бизнес-логике там не место.

6

Как сделать маршрут ленивым и почему это важно?

Ответ

Через loadComponent или loadChildren, которые выделяют маршрут в отдельный чанк, подгружаемый при переходе. Важно потому, что начальный бандл определяет время первого экрана, а админский раздел, куда никто не заходит, там быть не должен. Держит честным взгляд на размеры собранных чанков, а не предположение.

🦎

Прочитать ответы недостаточно

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

Пройти интервью Middle Angular Frontend →
Бесплатно · 3 интервью в месяц

Другие уровни — Angular Frontend

Junior Angular FrontendSenior Angular FrontendВсе вопросы Angular Frontend

Другие специализации

🔍Middle QA Manual🤖Middle QA AutomationMiddle Java Backend🐍Middle Python Backend🐘Middle PHP Backend🦫Middle Go Backend🟢Middle Node.js Backend💎Middle Ruby on Rails🟣Middle .NET Backend Developer🔷Middle C++