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++