• şimdiye kadar angular, vue, react gibi çeşitli frameworklerle monolithic olarak kodlanan frontend enterprise uygulamalar bir süre sonra şişip, bakımı oldukça zorlaşıyor.bu mimari sayesinde tıpkı microservice mimarisinde olduğu gibi uygulamanın feature'ları team'ler arasında paylaştırılarak(paylaşılmak zorunda değil :)) kodlanıyor.tabiiki kodlanan feature'lar bu mimariyle aynı framework kullanmak, framework kullanmak! zorunda değil.
  • hepsiburada teknik medium blog'unda hakkında bir makale yayınlanan teknik/mimari.
  • size hiç oradan buradan tanımları kopyala yapıştır yaparak bu olayı anlatmak yerine son birkaç haftadır bakınmalarım sonucu edindiğim bilgileri kendi cümlelerimle anlatacağım.

    bu olayın amacı fazlaca büyük ölçekteki projeleri parçalara bölüp, geliştirme ve bakım sürecini kolaylaştırmak.

    peki nasıl yapılıyor?

    öncelikle bölünen bu parçalar için birer ekip oluşturuluyor ve bu parçalar ayrı birer proje olarak baz alınıyor. bu ekipler yalnızca kendi sorumluluklarında olan bu parçalar üzerinde çalışıyor ve süreci devam ettiriyorlar. daha sonra da bir ana (container) uygulama içinde hepsi birleştiriliyor ve projenin istenilen birleşmiş hali ortaya çıkıyor.

    ben bunu öğreneyim kardeş biraz başlamam için yol göster diyenlere ise öncelikle henüz bu konunun bilir kişisi olmadığımı belirtmek isterim. fakat anladığım kadarıyla öncelikle webpack nedir, ne işe yarar onu bilmek gerekiyor. neden? çünkü webpack 5 ile birlikte gelen module federation plugin'i kullanarak ayrı ayrı olan bu projeleri expose edip container app'te kullanıyoruz. başka yöntemleri de vardır belki ama şu an gördüğüm kadarıyla en yaygın kullanılan yöntem bu. zaten bu olayı anladıktan sonra geriye pek bir şey kalmıyor.

    benim de henüz kafamda cevabı olmayan bazı sorular var aşağıda aklıma gelenler gibi. onların da cevaplarını öğrendikçe burada edit girebilirim.

    - stil için global class'lar kullanılabiliyor mu veya class isimlerinin çakışmaması için neler yapılıyor?
    - global bir state nerede ve nasıl tutuluyor?
  • dünyanın en gereksiz işi. bunun sebep olacağı karmaşıklıkla, binlerce problemle uğraşmak emin olun tek projeyi yönetilebilir kılmaktan bin kat daha zor. zaten bunu gazlayanlar da arkasında pek durmadı.
  • beladir. son 6 ayda bir gaz bir heyecanla bunu sistemine implemente eden herkes istisnasiz uzun vadede pisman olacak.

    aklima su geliyor, bence buna gecis yapilmasinin arkasinda su var: "aga bizim sirkete oyle bi sistem kuralim ki, biz bigun gidersek elleri kollari baglansin, bizsiz hicbir sey yapamasinlar. boylece bizi de kovamazlar"

    bunun disinda aklima hic bir sekilde yatmiyor. yonetilmesi zor, anlamsiz, faydasi limitli bir sistem. oyle bi senaryonuz vardir ki, bunu kullanmaniz mantikli olabilir tabi ki. ama her onune gelen buna kancayi atiyor su ara gaza gelip, kendilerine uzun vadede cok gulecegiz.
  • gerçekten ne işe yaradığını tam olarak anlayamadığım, monolithic yapının neyi bize yetmedi de micro frontende geçiş yaptık dedirten mesele.
hesabın var mı? giriş yap