Angular Geliştirici (Enterprise Web Apps)
FRONTENDKurumsal ölçekte, yüksek performanslı ve sürdürülebilir Angular uygulamaları geliştirme rehberi.
Aşama 1: TypeScript Temelleri (DNA)
Static Typing, Interfaces, DecoratorsTypeScript Nedir ve Neden Gerekli?
JS'in üzerine gelen tip güvenliği.
Statik Tipleme (Static Typing) ve Tip Çıkarımı (Type Inference)
Değişkenlere tip atama kuralları.
Arayüzler (Interfaces)
Veri modellerini tanımlama.
Sınıflar (Classes) ve Erişim Belirleyiciler (Access Modifiers)
public, private, protected farkları.
Generics (Genel Tipler)
Esnek ve tip güvenli fonksiyonlar.
Enums (Numaralandırmalar)
Sabit değerler kümesi.
Dekoratörler (Decorators)
Sınıflara ve metotlara özellik katma.
Birleşim ve Kesişim Tipleri (Union & Intersection Types)
Birden fazla tipi birleştirme.
Tuples (Demetler)
Sabit uzunluklu ve tipli diziler.
Null ve Undefined Kontrolü
Strict null checks ayarı.
Optional Chaining (?. Operatoru)
Derin objelere güvenli erişim.
Aşama 2: Angular Mimarisi ve CLI
Standalone, Modules, LifecycleAngular CLI: Komut Satırı Gücü
Proje oluşturma ve yönetme.
Module Mimarisi (NgModule)
Eski tarzdaki toplu yönetim.
Standalone Components (Yeni Standart)
Modüllere ihtiyaç duymayan bileşenler.
Uygulama Başlatma (App Bootstrapping)
Uygulamanın ilk ateşlenmesi.
Çalışma Alanı (Workspace) Yapısı
angular.json ve projeler.
Angular Derleyicisi (Compiler: JIT vs AOT)
Kodun tarayıcıya çevrilmesi.
Dependency Injection Hazırlık
Servislerin nasıl tanındığı.
Varlıklar (Assets) ve Global Stiller
Resimler ve CSS yönetimi.
Ortamlar (Environments)
Prod, Test ve Dev ayarları.
Polyfills ve Tarayıcı Desteği
Eski tarayıcılarla uyum.
Angular Versiyon Yönetimi
ng update kullanımı.
Aşama 3: Componentler ve Veri Bağlama
Data Binding, ViewChild, LifecyclesInterpolation ({{ }})
TS verisini HTML'e basma.
Property Binding ([ ])
HTML element özelliklerini bağlama.
Event Binding (( ))
Kullanıcı etkileşimlerini yakalama.
Two-Way Data Binding ([( )])
Çift yönlü senkronizasyon.
Bileşen Yaşam Döngüsü (Lifecycle): ngOnInit
Bileşen doğduğunda yapılacaklar.
Bileşen Yaşam Döngüsü (Lifecycle): ngOnChanges
Input verileri değiştiğinde tetiklenme.
Bileşen Yaşam Döngüsü (Lifecycle): ngOnDestroy
Bileşen öldüğünde temizlik.
@Input() ve @Output() Decorators
Bileşenler arası iletişim.
@ViewChild() ve @ViewChildren()
HTML elementine veya diğer bileşenlere erişim.
İçerik Yansıtma (Content Projection)
Bileşen içine HTML parçası gömme.
Bileşen Stilleri ve Kapsülleme (Encapsulation)
Emulated vs ShadowDom.
Aşama 4: Directive'ler ve Pipe'lar
Structural, Attribute, Custom PipesYapısal Direktifler (Structural Directives)
HTML yapısını değiştiren direktifler.
Öznitelik Direktifleri (Attribute Directives)
Görünümü ve stilleri değiştirme.
Özel (Custom) Öznitelik Direktifi Yaratma
Kendi davranışımızı yazma.
HostListener ve HostBinding
Direktiflerin olayları dinlemesi.
Yerleşik Borular (Built-in Pipes)
Veriyi ekrana basmadan önce dönüştürme.
Özel Boru (Custom Pipe) Yazımı
Kendi dönüştürücümüzü yaratma.
Saf (Pure) vs Saf Olmayan (Impure) Borular
Performans ayarları.
Async Pipe (Çok Önemli)
Observable verileri otomatik subscribe etme.
Zincirleme Borular (Chaining Pipes)
Birden fazla pipe'ı arka arkaya kullanma.
Uluslararasılaştırma (i18n) ve Veri Biçimlendirme
Ülkelere göre formatlama.
Safe Navigation Operator (?.) ve Pipes
Hataları borularda önlemek.
Aşama 5: Form Yönetimi (Reactive & Template)
Validation, FormGroups, Custom ValidatorsŞablon Odaklı Formlar (Template-Driven Forms)
HTML odaklı form yönetimi.
Reaktif Formlar (Reactive Forms) Temelleri
Kod odaklı (Programmatic) form yönetimi.
FormBuilder Servisi
Form gruplarını kolayca oluşturma.
Form Doğrulayıcılar (Form Validators)
Giriş verilerini doğrulama.
Özel Doğrulayıcı (Custom Validators) Yazımı
Kendi doğrulama mantığımızı ekleme.
Asenkron Doğrulayıcılar (Async Validators)
API sorgusu ile doğrulama.
FormArray: Dinamik Formlar
Değişken sayıda form elemanı yönetimi.
ValueChanges ve StatusChanges
Formdaki her hareketi izleme.
patchValue vs setValue
Form verilerini güncelleme farkları.
İç İçe Geçmiş Form Grupları (Nested FormGroups)
İç içe geçmiş form yapıları.
Form Reset ve Prinstine State
Formu temizleme ve durum yönetimi.
Aşama 6: Dependency Injection ve Servisler
Providers, Injectors, Singleton ServicesBağımlılık Enjeksiyonu (Dependency Injection) Nedir?
Bağımlılıkların dışarıdan enjekte edilmesi.
Servis Yaratma (@Injectable)
Paylaşılan mantık ve veri merkezi.
Hiyerarşik Enjektörler (Hierarchical Injectors)
Hiyerarşik enjektör yapısı.
Tekil Servisler (Singleton Services)
Uygulama genelinde tek bir nesne.
Enjeksiyon Jetonları (Injection Tokens)
String veya nesne tabanlı anahtarlar.
The useClass, useValue, useFactory
Provider tanımlama stratejileri.
@Optional() ve @Self() Decorators
DI arama davranışını değiştirme.
@Host() ve @SkipSelf()
Enjektör ağacında arama yönü.
ProvidedIn: 'platform' vs 'any'
Gelişmiş servis ömürleri.
Inject() Fonksiyonu (Yeni)
Constructor dışı bağımlılık alma.
Servis Yaşam Döngüsü (Service Life-cycle)
Servislerin ne zaman öldüğü.
Aşama 7: Routing ve Navigasyon Mimarisi
Lazy Loading, Guards, ResolversApp Routing Modülü Planlama
Sayfa yollarının tanımlanması.
RouterLink ve RouterOutlet
Sayfalar arası geçiş ve görüntüleme.
Dinamik Rotalar (Dynamic Routes ve Params)
ID bazlı sayfalar.
Tembel Yükleme (Lazy Loading)
Sayfaları sadece ihtiyaç anında yükleme.
Rota Korumaları (Route Guards): CanActivate
Yetkisiz girişleri engelleme.
Rota Korumaları (Route Guards): CanDeactivate
Kaydedilmemiş değişiklik uyarısı.
Çözümleyiciler (Resolvers: Veri Önden Yükleme)
Sayfa açılmadan veriyi hazır etme.
Alt Rotalar (Child Routes / Nested Routing)
İç içe geçmiş sayfalar.
Joker Rotalar (Wildcard Routes / 404)
Bilinmeyen yolları yakalama.
Router Events Takibi
Navigasyon anlarını izleme.
Konum Stratejisi (Location Strategy: Hash vs Path)
URL formatı seçimi.
Aşama 8: RxJS ve Reaktif Programlama
Observables, Operators, SubjectsObservable Nedir?
Zamanla akan veri akışı.
Abonelik (Subscription) ve Gözlemci (Observer)
Veri akışına abone olma.
Boru (Pipeable) Operatörleri: Map & Filter
Veriyi akarken dönüştürme ve süzme.
switchMap Operatörü (Mülakat Sorusu)
Eski isteği iptal edip sonuncuya odaklanma.
mergeMap vs concatMap
Paralel vs Sıralı işlem yönetimi.
debounceTime ve distinctUntilChanged
Gereksiz istekleri durdurma.
Subjects (Normal, Behavior, Replay)
Hem veri üreten hem veri dinleyen yapılar.
combineLatest ve forkJoin
Birden çok kaynağı birleştirme.
Hata Yönetimi (Error Handling): catchError ve retry
Ağ hatalarını yakalama ve tekrar deneme.
takeUntil ve Unsubscription
Otomatik abonelik sonlandırma.
Tap Operatörü: Yan Etkiler
Akışı bozmadan işlem yapma.
Aşama 9: HttpClient ve API Entegrasyonu
Interceptors, Error Handling, File UploadHttpClientModule ve Injection
API istekleri için motoru kurma.
HTTP Araya Girenler (Interceptors)
Tüm isteklere merkezi müdahale.
Fonksiyonel Interceptors (Yeni)
Modern ve hafif interceptor yapısı.
HttpParams ve HttpHeaders
Dinamik sorgu ve başlık yönetimi.
Global Hata Yönetimi (HttpErrorResponse)
Merkezi hata yakalama simülasyonu.
Dosya Yükleme (File Upload) ve İlerleme Çubuğu
Büyük dosyaları sunucuya yükleme.
JSONP ve Alanlar Arası (Cross-Domain) İstekler
Güvenlik ve CORS aşma yöntemleri.
Interceptor ile Önbellekleme (Caching)
API cevaplarını bellekte saklama.
Yeniden Deneme Deseni (Retry Pattern)
Kopan bağlantıları kurtarma.
Tip Güvenli HTTP Yanıtları (Type-Safe Responses)
API cevaplarına tip atama.
İkili Veri İşleme (Handling Binary Data / Blob)
Resim veya PDF indirme.
Aşama 10: State Management (NgRx & Signals)
Store, Effects, Modern Signals StateNeden Durum Yönetimi (State Management)?
Bileşenler arası veri senkronizasyonu.
NgRx Core: Actions, Reducers, Store
Redux mimarisinin Angular hali.
NgRx Yan Etkileri (Effects)
API çağrılarını Store'dan ayırma.
Seçiciler (Selectors: Zeki Sorgular)
Store içinden veri seçme mantığı.
NgRx Varlık (Entity): Tablo Yönetimi
ID bazlı verileri yönetme.
Angular Signals (Gelecek Geldi!)
Yeni nesil reaktif veri yönetimi.
Hesaplanmış (Computed) Signals ve Effects
Bağımlı verileri otomatik güncelleme.
Signals vs RxJS (Ne Zaman Hangisi?)
Hibrit mimari kuralları.
Servislerle Durum Yönetimi (State with Services)
Kütüphanesiz basit state yönetimi.
NgRx Bileşen Deposu (Component Store)
Bileşene özel lokal state.
Redux DevTools Entegrasyonu
Zaman yolculuğu ile hata ayıklama.
Aşama 11: Angular Testing (Unit & E2E)
Jasmine, Karma, Cypress, SpectatorBirim Test (Unit Testing) Nedir?
Küçük fonksiyonların doğruluğunu test etme.
Karma Test Runner
Testlerin tarayıcıda çalıştırılması.
Bileşen Testi (Component Testing)
Bileşenin HTML ve TS uyumunu test etme.
Servis Testi ve Taklit Etme (Mocking)
Ağ isteklerini simüle etme.
Boru ve Direktif Testi (Pipe ve Directive Testing)
Saf fonksiyonların ve davranışların testi.
Spies (Casuslar) ve Mocks
Fonksiyon çağrılarını takip etme.
Asenkron Test: fakeAsync ve tick
Zamanı kontrol etme.
Spectator Kütüphanesi
Boilerplate kodları azaltan test aracı.
Uçtan Uca Test (E2E Testing): Cypress
Gerçek bir kullanıcı gibi akış testi.
Chrome DevTools ile Hata Ayıklama (Debugging)
Breakpoint koyarak hata ayıklama.
Test Kapsamı (Code Coverage)
Kodun yüzde kaçının test edildiği.
Aşama 12: SSR, SEO ve Deployment
Angular Universal, Hydration, FirebaseAngular Universal (SSR)
Sunucu tarafında render etme.
Hydration (Angular 17+)
Sunucudan gelen sayfayı canlandırma.
Ön Oluşturma (Prerendering / Static Site Gen)
Statik sayfalar üretme.
PWA: Progress Web Apps
Web sitesini uygulama gibi yükleme.
Paket Boyutu Optimizasyonu (Bundle Size Optimization)
Paket boyutunu küçültme.
Görsel ve Fontların Tembel Yüklenmesi (Lazy Loading)
Görsel ve font optimizasyonu.
Çalışma Zamanı Konfigürasyonu (Runtime Config)
Ayarları başlarken çekme.
Firebase Hosting & Deployment
Hızlı ve bedava yayına alma.
Angular Uygulamasını Dockerize Etmek
Uygulamayı konteynere koyma.
CI/CD Pipelines (GitHub Actions)
Otomatik build ve deploy.
Güvenlik En İyi Pratikleri (Security Best Practices)
Web güvenliği önlemleri.
Bilgi Sorumluluktur
buyoldan.com tarafından sunulan bu yol haritaları, yalnızca öğrenme sürecini kolaylaştırmak amacıyla hazırlanan birer rehber ve tavsiye niteliğindedir. Konular zamanla güncellenebilir, değişebilir veya sınav sistemlerine göre farklılık gösterebilir. Hedefine ulaşırken yalnızca buradaki içeriklerle yetinmemeni, resmi kaynakları ve güncel müfredatları da düzenli olarak araştırmanı şiddetle öneririz. Kendi yolunu çizmek senin elinde!
Buna Da Göz At
C# ve .NET Core Yazılım Geliştirme (Sıfırdan İleriye)
Modern yazılım prensipleriyle C# ve ASP.NET Core (MVC ve WebAPI) üzerinde üretim seviyesinde backend geliştirme yolculuğu
Python Geliştirici (Backend & Otomasyon)
Python kullanarak; temel script yazımından başlayıp Django/FastAPI ile gelişmiş backend servisleri ve web scraping otomasyonları kurmaya uzanan uzmanlık rotası.
Yapay Zeka ve Veri Bilimi Uzmanı (AI & Data Science)
Lineer cebirden makine öğrenmesine, derin sinir ağlarından üretken yapay zekaya (ChatGPT) uzanan en profesyonel ve eksiksiz AI rotası.