Angular Intervyu Tayyorgarlik
Junior dan Senior gacha 232 ta mavzu β tree.json asosida tuzilgan toβliq oβquv qoβllanma.
π Yodlash kartochkalari β imtihon oldi takrori. Faqat yodlanadigan faktlar, eng koβp xato qilinganlari birinchi oβrinda.
π Test bazasi β barcha mavzular boβyicha 379 ta savol β 301 variantli + 78 yopiq (qisqa javob), izohi bilan.
Daraja:
Daraxt ko'rinishi
- var / let / const β scope, hoisting, TDZ
- Arrow vs Regular function β this farqi
- Closure β yopilish va lexical scope
- Destructuring, Spread, Rest operator
- Optional chaining (?.) va Nullish coalescing (??)
- Array metodlari β map, filter, reduce, find, some, every, flat
- Object metodlari β keys, values, entries, assign
- Event Loop β Call Stack, Web API, Microtask, Macrotask
- Promise β then/catch/finally, Promise.all/allSettled/race
- async / await β xato boshqarish
- Prototype chain β __proto__, Object.create
- this β call, apply, bind
- Class sintaksisi β extends, super
- Asosiy tiplar β string, number, boolean, any, unknown, never, void
- interface vs type β farqlari va qachon ishlatish
- Union, Intersection, Literal types
- Generics β T, constraint (extends), Utility types
- Type Guards β typeof, instanceof, in, custom is
- Conditional types β T extends U ? X : Y
- Mapped types β keyof, in, readonly, ?
- Template literal types
- Decorators β class, method, property decorator
- tsconfig β strict, noImplicitAny, strictNullChecks
- Memory management β GC, closure leak, WeakMap/WeakSet
- Web Workers β asosiy thread yuklama
- Big O notation β O(1), O(log n), O(n), O(nΒ²)
- Space complexity
- Array β in-place va funksional usullar
- HashMap / Map / Set β O(1) amallar
- Stack va Queue β LIFO, FIFO
- Linked List β yaratish, traversal
- Tree β binary tree, BST traversal
- Graph β adjacency list/matrix
- Linear search O(n) va Binary search O(log n)
- Bubble Sort, Selection Sort, Insertion Sort β O(nΒ²)
- Merge Sort, Quick Sort β O(n log n)
- JavaScript Array.sort() β timsort
- Recursion β base case, call stack, tail recursion
- Memoization β top-down DP
- Dynamic Programming β tabulation, bottom-up
- BFS β Breadth First Search (queue)
- DFS β Depth First Search (stack/recursion)
- Two Sum, Three Sum β hash map yondashuv
- Sliding Window pattern
- Two Pointers pattern
- @Component dekoratori β selector, template, styles
- Standalone component β imports array (v14+)
- Data binding β interpolation, property, event, two-way
- Lifecycle hooks β ngOnInit, ngOnDestroy, ngOnChanges, ngAfterViewInit
- @Input, @Output, EventEmitter
- @Input({ required: true }) β Angular 16+
- input(), output(), model() signals β Angular 17.1+
- Template reference variable (#ref)
- Safe navigation (?.) va Non-null assertion (!)
- ng-template, ng-container, ng-content
- ng-content select β named slots
- @ViewChild, @ContentChild, @ViewChildren
- Default strategy β butun tree tekshirish
- OnPush strategy β faqat @Input, event, async pipe
- ChangeDetectorRef β markForCheck, detectChanges
- Zoneless Angular β zone.js'siz (v18+)
- Dynamic component β ViewContainerRef.createComponent()
- Ivy compiler β AOT vs JIT
- Angular elements β custom element
- @Injectable() dekoratori
- providedIn: 'root' β singleton service
- providedIn: 'any' / 'platform' β farqlari
- inject() funksiya (v14+) β constructor'siz
- HttpClient β get, post, put, patch, delete
- HTTP options β params, headers, responseType
- HTTP Interceptor β request/response transform
- Functional interceptor (v15+)
- Error handling interceptor β global
- Retry va exponential backoff
- DI iyerarxiyasi β root, module, component
- providers: [] β component darajasida yangi instance
- @SkipSelf, @Self, @Optional dekoratorlari
- InjectionToken β non-class dependency
- useClass, useValue, useFactory, useExisting
- multi: true provider
- APP_INITIALIZER β ilova ishga tushishdan oldin
- ENVIRONMENT_INITIALIZER (v14+)
- BehaviorSubject pattern β local state
- Signal-based store (v17+)
- Ivy β default runtime, View Engine o'chirildi
- Strict mode β tsconfig yangilanishlar
- Standalone Components, Directives, Pipes
- Typed Reactive Forms β FormControl<T>
- bootstrapApplication() β NgModule'siz
- inject() funksiyasi
- Directive Composition API β hostDirectives
- Functional Guards va Resolvers
- provideRouter, provideHttpClient
- Signals β signal(), computed(), effect() (preview)
- @Input({ required: true })
- takeUntilDestroyed() β DestroyRef
- SSR hydration yaxshilandi
- Yangi control flow β @if, @for, @switch
- @defer β lazy block, triggerlar
- Signals stable β production
- input(), output(), model() signal-based API
- viewChild(), viewChildren() signal queries
- Zoneless β provideExperimentalZonelessChangeDetection()
- Signal-based component (RFC)
- Migration strategiyasi β ng update, schematics
- *ngIf β else, then blocks
- *ngFor β trackBy, index, first, last, even, odd
- [ngClass] β ob'ekt, array, string usullar
- [ngStyle]
- ngSwitch, ngSwitchCase, ngSwitchDefault
- Angular 17+: @if, @for, @switch β yangi sintaksis
- @Directive β selector, standalone
- ElementRef β host elementga kirish
- Renderer2 β xavfsiz DOM manipulation (SSR)
- @HostListener β eventlarni tinglash
- @HostBinding β property bog'lash
- @Input() via directive selector
- TemplateRef va ViewContainerRef
- Microsyntax β * prefiksi
- Directive Composition API β hostDirectives (v15+)
- exportAs β template reference variable
- CDK directives β drag, drop, overlay
- Observable vs Promise β farqlari
- Cold vs Hot Observable
- Yaratish β of, from, interval, timer, fromEvent
- subscribe β next, error, complete
- unsubscribe β xotira tozalash
- map, filter, tap, take, first, last
- debounceTime, distinctUntilChanged
- delay, throttleTime
- switchMap β yangi kelsa eskini bekor qil (search)
- mergeMap β parallel ishla
- concatMap β tartibli (queue)
- exhaustMap β hozirgi tugamaguncha yangi qabul qilma (login)
- combineLatest β istalgan biri o'zgarganda
- forkJoin β barchasi tugaganda (parallel HTTP)
- zip, merge, concat
- withLatestFrom
- Subject β sodda, hot observable
- BehaviorSubject β oxirgi qiymat saqlanadi
- ReplaySubject(n) β oxirgi n ta saqlanadi
- AsyncSubject β faqat complete'dagi
- catchError β xatoni ushlash
- retry, retryWhen β qayta urinish
- takeUntil β xotira sΔ±zdΔ±rmasi oldini olish
- takeUntilDestroyed() β Angular 16+ avtomat
- async pipe β avtomat subscribe/unsubscribe
- shareReplay(1) β bitta HTTP, ko'p subscriber
- Custom operator yaratish
- Scheduler β animatsion frame, asinkron
- Marble testing β TestScheduler
- async β Observable/Promise template'da
- date β formatlar (dd/MM/yyyy, shortDate, fullDate)
- currency β valyuta formatlash
- number (decimal), percent
- json β ob'ekt debug
- slice β array va string qirqish
- uppercase, lowercase, titlecase
- keyvalue β ob'ekt iteratsiya
- @Pipe dekoratori, PipeTransform interfeysi
- Pure pipe β faqat input o'zgarganda
- Impure pipe (pure: false) β har CD'da
- Standalone pipe (v14+)
- Pure pipe caching mexanizmi
- Katta ro'yxat uchun computed/getter muqobil
- Impure pipe β performance oqibatlari
- FormsModule import
- ngModel β two-way binding
- ngForm β form holati (valid, dirty, touched)
- Built-in validators β required, minlength, maxlength, email, pattern
- Xato ko'rsatish β ngModel.errors
- ReactiveFormsModule import
- FormControl β bitta field
- FormGroup β fields to'plami
- FormArray β dinamik fields
- FormBuilder β qisqa yaratish usuli
- updateOn: 'blur' | 'submit' | 'change'
- Sync custom validator β ValidatorFn
- Async custom validator β AsyncValidatorFn
- Cross-field validator β FormGroup darajasida
- Validator composition β Validators.compose
- ControlValueAccessor β custom form control
- Typed Reactive Forms β FormGroup<T> (v14+)
- Dynamic form generation
- Form performance β updateOn, debounce
- declarations β component, directive, pipe
- imports β boshqa modullar
- exports β tashqariga berish
- providers β service instance
- bootstrap β root component
- Feature module β bitta funksionallik
- SharedModule β umumiy component/pipe/directive
- CoreModule β singleton service'lar
- CoreModule guard β @SkipSelf ikki marta import oldini olish
- loadChildren β lazy module
- loadComponent β standalone lazy (v14+)
- RouterModule.forRoot vs forChild
- Preloading β PreloadAllModules, custom strategy
- Webpack Bundle Analyzer β bundle ko'rish
- bootstrapApplication() β NgModule'siz
- importProvidersFrom() β module'dan provider olish
- Migration schematic β ng generate @angular/core:standalone
- Module Federation β Webpack 5 micro-frontend
- Template reference variable (#ref)
- Safe navigation (?.) β null check zanjiri
- $event, $any() β template ichida
- ng-template bilan *ngIf else pattern
- ng-container β DOM element qo'shmasdan
- @if / @else if / @else β *ngIf o'rniga
- @for ... track ... @empty β *ngFor o'rniga
- @switch / @case / @default
- @defer β lazy block (on viewport, on interaction)
- @placeholder, @loading, @error β defer bloklar
- Smart (Container) vs Dumb (Presentation) component
- @Input/@Output convention β unidirectional flow
- Component communication β service, state
- OnPush + async pipe β eng tez pattern
- trackBy β *ngFor DOM qayta yaratilmasin
- Pure pipe β computed qiymatlar
- Virtual Scrolling β CDK (katta ro'yxat)
- Lazy loading images β loading='lazy'
- Tree shaking β ko'p import qilmaslik
- Single Responsibility β har class bitta mas'uliyat
- Open/Closed β kengaytirish uchun ochiq
- Dependency Inversion β abstrakt'ga bog'liq bo'l
- Naming convention β Angular style guide
- Barrel exports β index.ts pattern
- Unit test β Jasmine, Karma
- TestBed β Angular test modulini o'rnatish
- Component testing β fixture, debugElement
- Service mocking β jasmine.createSpyObj
- E2E β Cypress, Playwright
Mavzular
Qanday foydalanish
- Chap sidebar dan topic tanlang
- Yuqoridagi Daraja filtri dan Junior / Middle / Senior ni tanlang
- Har mavzuda: tushuntirish β kod β imtihon savoli β yodlash qoidasi
- Kod misollarini oβzingiz yozib koβring
Darajalar
- Junior β asoslar, sintaksis, oddiy misollar
- Middle β amaliy pattern, RxJS, Forms, arxitektura
- Senior β performance, advanced DI, migration, testing
