Mert Özen Further With Every Line

Blog

Mert Özen's blog posts on software development, backend, frontend, and DevOps.

Series
19 posts found #angular-12
Angular Build and Deploy: ng build, Environment Files, Budgets and SPA Routing
Frontend PART 19

Angular Build and Deploy: ng build, Environment Files, Budgets and SPA Routing

Production bundles with ng build in Angular 12: the dist output, environment files via fileReplacements, budgets, base href, the SPA routing 404 on Nginx/IIS, source maps and bundle analysis.

31 Oct 2026 7 min 1
Getting Started With Angular Testing: Karma, Jasmine, TestBed and HttpClientTestingModule
Frontend PART 18

Getting Started With Angular Testing: Karma, Jasmine, TestBed and HttpClientTestingModule

Karma and Jasmine with ng test in Angular 12, the structure of a spec file, component tests with TestBed and ComponentFixture, service tests with fake dependencies and HTTP mocking with HttpClientTestingModule.

31 Oct 2026 7 min 2
Change Detection and Zone.js in Angular: OnPush, ChangeDetectorRef and NgZone
Frontend PART 17

Change Detection and Zone.js in Angular: OnPush, ChangeDetectorRef and NgZone

How does Angular update the screen? The events Zone.js catches, change detection across the component tree, the OnPush strategy, immutable data, ChangeDetectorRef and NgZone.runOutsideAngular.

31 Oct 2026 7 min 1
Angular Reactive Forms: FormGroup, FormBuilder, FormArray and Validators
Frontend PART 16

Angular Reactive Forms: FormGroup, FormBuilder, FormArray and Validators

Reactive forms in Angular 12: building the form in the class with FormControl, FormGroup and FormBuilder, custom and async validators, dynamic fields with FormArray, valueChanges and patchValue.

31 Oct 2026 8 min 1
Angular Template-driven Forms: ngModel, ngForm and Form Validation
Frontend PART 15

Angular Template-driven Forms: ngModel, ngForm and Form Validation

We build a template-driven form in Angular 12: FormsModule, ngModel and name, ngForm with ngSubmit, required/email/pattern validators, touched/dirty states, CSS classes and ngModelGroup.

31 Oct 2026 7 min 1
Angular Guards and Lazy Loading: CanActivate, CanDeactivate, CanLoad and Resolve
Frontend PART 14

Angular Guards and Lazy Loading: CanActivate, CanDeactivate, CanLoad and Resolve

We protect routes with class-based guards in Angular 12: CanActivate, CanDeactivate, CanLoad and Resolve. We lazy load a feature module with loadChildren and preload it with PreloadAllModules.

31 Oct 2026 8 min 1
Angular Routing Guide: RouterModule, Route Parameters and Child Routes
Frontend PART 13

Angular Routing Guide: RouterModule, Route Parameters and Child Routes

Routing in Angular 12: app-routing.module.ts, router-outlet, routerLink, route parameters with ActivatedRoute, query params, Router.navigate, child routes, redirectTo and a wildcard for 404s.

31 Oct 2026 7 min 1
Angular HttpClient for API Requests: GET, POST, Error Handling and Interceptors
Frontend PART 12

Angular HttpClient for API Requests: GET, POST, Error Handling and Interceptors

We send GET, POST, PUT and DELETE requests with Angular 12's HttpClient. Typed responses, HttpParams, error handling with catchError and retry, class-based interceptors and environment config.

31 Oct 2026 9 min 1
Introduction to RxJS in Angular: Observables, Operators, BehaviorSubject and the async Pipe
Frontend PART 11

Introduction to RxJS in Angular: Observables, Operators, BehaviorSubject and the async Pipe

Observable vs Promise, of/from/interval/fromEvent, a search box with map, filter, debounceTime and switchMap, service state with BehaviorSubject, the async pipe, and avoiding leaks with takeUntil.

31 Oct 2026 8 min 1
Angular Services and Dependency Injection: providedIn, the Injector Tree and Providers
Frontend PART 10

Angular Services and Dependency Injection: providedIn, the Injector Tree and Providers

Why services exist, singletons with providedIn: 'root', constructor injection, component-level providers and hierarchical injectors, useClass/useValue/useFactory, and config values via InjectionToken.

31 Oct 2026 7 min 1
Angular Pipes: Dates, Currency, Turkish Locale and Writing a Custom Pipe
Frontend PART 09

Angular Pipes: Dates, Currency, Turkish Locale and Writing a Custom Pipe

Built-in pipes like date, currency, number and titlecase, parameters and chaining, Turkish formatting with registerLocaleData, writing a custom pipe, and how pure vs impure affects performance.

31 Oct 2026 7 min 1
Angular Lifecycle Hooks: A Component's Life From ngOnInit to ngOnDestroy
Frontend PART 08

Angular Lifecycle Hooks: A Component's Life From ngOnInit to ngOnDestroy

Constructor vs ngOnInit, ngOnChanges with SimpleChanges, ngAfterViewInit where ViewChild is ready, and ngOnDestroy for cleaning up intervals. We log every hook to see the exact order.

31 Oct 2026 7 min 1
Blog Map