Skip to main content
Web Geliştirme

Micro Frontend Nedir? Mimari Rehberi

Mart 15, 2026 3 dk okuma 16 views Raw
Micro frontend modüler mimari yapısı görseli
İçindekiler

Micro Frontend Nedir?

Micro frontend, büyük ve karmaşık web uygulamalarını bağımsız, küçük parçalara bölen bir mimari yaklaşımdır. Microservices mimarisinin frontend tarafındaki karşılığı olan bu yaklaşım, farklı ekiplerin aynı uygulama üzerinde bağımsız olarak çalışmasını mümkün kılar. Her bir micro frontend, kendi teknoloji yığınına, geliştirme döngüsüne ve deployment sürecine sahip olabilir.

Neden Micro Frontend?

Geleneksel monolitik frontend uygulamaları büyüdükçe çeşitli sorunlar ortaya çıkar:

  • Ölçeklenme zorluğu: Büyük kod tabanlarında değişiklik yapmak riskli ve zaman alıcıdır
  • Ekip koordinasyonu: Birden fazla ekibin aynı kod tabanında çalışması çatışmalara neden olur
  • Teknoloji bağımlılığı: Tüm uygulama tek bir framework'e bağlı kalır
  • Deployment riskleri: Küçük bir değişiklik bile tüm uygulamanın yeniden dağıtılmasını gerektirir

Micro Frontend Uygulama Yöntemleri

Module Federation (Webpack 5)

Webpack 5 ile gelen Module Federation, micro frontend uygulamalarının en popüler yöntemlerinden biridir. Farklı uygulamalar arasında modüllerin çalışma zamanında paylaşılmasını sağlar. Paylaşılan bağımlılıklar tekrar yüklenmez, bu da performansı artırır.

Single-SPA

Single-SPA, farklı framework'lerle (React, Vue, Angular) yazılmış uygulamaları tek bir sayfada birleştiren bir çerçevedir. Her uygulama kendi yaşam döngüsüne sahiptir ve bağımsız olarak yüklenip kaldırılabilir.

iframe Tabanlı

En basit yöntem olan iframe yaklaşımı, her micro frontend'i ayrı bir iframe içinde çalıştırır. Tam izolasyon sağlar ancak performans ve kullanıcı deneyimi açısından dezavantajları vardır.

Web Components

Web Components standardı, framework bağımsız özel HTML elementleri oluşturmayı sağlar. Shadow DOM ile stil izolasyonu ve Custom Elements ile bileşen tanımı yapılabilir.

Micro Frontend Mimarisi Tasarım İlkeleri

İlkeAçıklamaFayda
Bağımsız deploymentHer parça ayrı ayrı yayınlanabilirHızlı ve güvenli güncellemeler
Ekip özerkliğiHer ekip kendi teknoloji seçimini yaparVerimli geliştirme süreci
Gevşek bağlantıParçalar arasında minimum bağımlılıkKolay bakım ve değişiklik
İzolasyonCSS ve JavaScript çakışması önlenirKararlı uygulama davranışı

İletişim Stratejileri

Micro frontend'ler arasında veri paylaşımı için çeşitli stratejiler kullanılır:

  1. Custom Events: Tarayıcının yerleşik olay sistemi üzerinden iletişim
  2. Shared State: Redux veya benzeri bir state yönetim aracının paylaşılması
  3. URL tabanlı: Query parametreleri ve URL değişiklikleri üzerinden veri aktarımı
  4. Pub/Sub: Yayın-abone modeli ile gevşek bağlantılı iletişim

Performans Optimizasyonu

Micro frontend mimarisinde performans özel dikkat gerektirir:

  • Paylaşılan bağımlılıklar: React gibi ortak kütüphanelerin tekrar yüklenmesini önleyin
  • Lazy loading: Micro frontend'leri ihtiyaç duyulduğunda yükleyin
  • Preloading: Kullanıcının gideceği sayfanın micro frontend'ini önceden yükleyin
  • Bundle analizi: Her micro frontend'in boyutunu düzenli olarak izleyin

Zorluklar ve Çözümler

Tutarlı Kullanıcı Deneyimi

Farklı ekiplerin geliştirdiği parçaların tutarlı görünmesi için paylaşılan bir tasarım sistemi (design system) oluşturulmalıdır. Ortak component kütüphaneleri ve stil rehberleri bu tutarlılığı sağlar.

Test Stratejisi

Her micro frontend birim ve entegrasyon testleriyle bağımsız olarak test edilmelidir. Ayrıca tüm parçaların bir arada çalıştığını doğrulayan uçtan uca (E2E) testler de gereklidir.

Micro frontend mimarisi, büyük ve karmaşık web uygulamalarını yönetilebilir parçalara bölerek ekip verimliliğini ve uygulama kalitesini artırır. Ancak doğru uygulanmadığında gereksiz karmaşıklık yaratabilir.

Sonuç

Micro frontend mimarisi, büyük ölçekli web projelerinde ekip bağımsızlığı ve ölçeklenebilirlik sağlayan güçlü bir yaklaşımdır. Ekolsoft olarak, kurumsal müşterilerimizin karmaşık web uygulamalarını modüler ve sürdürülebilir bir mimaride geliştirmelerini destekliyoruz. Doğru uygulama yöntemi ve iletişim stratejisi seçimi, başarılı bir micro frontend projesinin anahtarıdır.

Bu yazıyı paylaş