Pověz mi o Event Loop v JavaScriptu: z čeho se skládá a v jakém pořadí jsou vykonávány synchronní kód, mikroúkoly a makroúkoly?
Frontend
Vysvětlete problém s výše uvedeným kódem komponenty Angular a jak jej opravit: ```typescript @Component({ selector: 'app-user', template: './user.component.html', stylesUrls: './user.component.scs', changeDetection: ChangeDetectionStrategy.OnPush, }) export class CmfUserComponent { users$: any; constructor() { const api = new BackendService(); this.users$ = api.getUsers(); } } ```
Použili jste někdy metody call, apply a bind? Vysvětlete jejich účel a rozdíly.
Jak spolehlivě můžete určit, zda je aplikace otevřena na mobilním zařízení nebo na desktopu, aby bylo možné vybrat vhodnou verzi rozhraní?
Co je Dependency Injection v Angularu a jak lze závislosti injektovat?
Máte hotovou webovou aplikaci CRM/Service Desk pouze pro desktop, která na mobilních zařízeních vypadá špatně. Design mobilní verze je již připraven a výrazně se liší od verze pro desktop. Jak byste zorganizovali přizpůsobení aplikace pro mobilní prohlížeče?
Co zobrazí komponenta, pokud dekorátor specifikuje template: './user.component.html' místo templateUrl? Je takový zápis platný?
Proč je v Angularu nutná Dependency Injection, pokud lze závislosti vytvářet pomocí new nebo je uložit do globálního stavu?
Jste technický vedoucí týmu 3-4 frontend vývojářů. Objevil se nový velký webový produkt CRM nebo Service Desk s hotovým backendem. Jak vyberete technologii pro část frontend?
Pokud jsou pro desktop a mobilní verze používány různé sady komponent, ale služby jsou sdílené, jak organizovat přepínání mezi verzemi?
Jak dobrá je praxe přihlášení k Observable přímo v kódu komponenty Angular? Jaká jsou rizika a alternativy?
Pověz mi o klíčovém slovu this v JavaScriptu: čím závisí jeho hodnota při volání funkce? Jaké jsou vlastnosti šipkových funkcí?
Jak je oprávněné úplně odmítnout NgModule v nových projektech Angular? V jakých případech mohou být moduly stále potřeba?
Použili jste někdy dekorátory DI jako @Optional, @Self, @SkipSelf a @Host? Vysvětlete, jak ovlivňují hledání závislostí v hierarchii injektorů.
Jaký je rozdíl mezi tím, kde je funkce deklarována a kde je volána, v kontextu hodnoty this?
Jaké jsou výhody funkce inject() v Angularu ve srovnání s injekcí závislostí přes konstruktor?
Pokud deklarujete funkci uvnitř jiné funkce, k čemu bude mít přístup? Jak bude toto fungovat s this v vnořené běžné funkci?
Je přípustné přiřadit Observable přímo k poli komponenty v konstruktoru nebo při inicializaci pole? Jaký je rozdíl od předplatného v konstruktoru?
Co je to detekce změn v Angularu? Čím se liší strategie Default a OnPush a kdy je kontrolován komponent s OnPush?
Na jakých úrovních lze v Angularu poskytovat služby prostřednictvím providerů: komponenta, routa, modul, aplikace, platforma?