1 puan yazan GN⁺ 2023-10-27 | 1 yorum | WhatsApp'ta paylaş
  • Web bileşenlerinin uzun ömürlülüğü ve esnekliği üzerine bir yazı; JavaScript framework’leriyle karşılaştırılıyor
  • Yazar, bir projedeki teknoloji seçiminin varsayılan seçeneklere göre değil, projenin kısıtları tarafından belirlenmesi gerektiğini savunuyor
  • Yazarın projede vanilla JS web bileşenlerini seçme nedenleri: taşınabilirlik ve HTML render etme yeteneği
  • Yazarın blogu Astro, Hugo, PHP ile yazılmış özel bir CMS, Tumblr, Movable Type ve WordPress gibi çeşitli araçlarla oluşturuldu
  • İçeriği Markdown ile yazılmış düz metin dosyalarında tutmanın avantajları vurgulanıyor; sistemler arasında içerik taşıma sürecini basitleştiriyor
  • Yazar, Astro’ya özgü bazı özelliklerin kullanışlı olsa da taşınabilir olmadıkları için projede kullanılmadığını belirtiyor
  • Web bileşenleri Markdown içindeki HTML olarak yazılabiliyor; bu da onları Markdown içeriğinin geri kalanı kadar taşınabilir kılıyor
  • Web bileşenleri, yeniden kullanılabilir HTML öğeleri oluşturmak için W3C standartları kümesi; tüm HTML, CSS ve JS’yi tek bir dosyada kapsüllüyor ve bir build sistemi gerektirmiyor
  • Yazar, web bileşenlerinin dışarıdan yapılandırılabilmeleri için attribute’lar sunabildiğine dikkat çekiyor; bu, yerel props’a benziyor
  • Yazar, bakım ve bağımlılık ödünleşmeleriyle ilgili kaygılar nedeniyle Lit, Stencil ve Svelte gibi web bileşenlerine derlenen framework’ler yerine vanilla JS kullanmayı tercih etti
  • Yazar, TypeScript gibi bağımlılıkların yararlı özellikler sağlayabildiğini ancak yeni sürümler ve API’lerle uyumluluğu korumak için zaman ve emek gerektiğini savunuyor
  • Kullanıcının kontrol etmediği bağımlılıklardan kaçınmanın ve uzun vadeli erişilebilirlik ile web içeriğinin dayanıklılığı için istikrarlı, bilinen standartlara bağlı kalmanın önemi vurgulanıyor
  • Sonuç olarak yazar, webin uzun ömürlülük gözetilerek kullanıldığında en dayanıklı, en taşınabilir ve geleceğe en hazır bilişim platformu olduğunu övüyor

1 yorum

 
GN⁺ 2023-10-27
Hacker News görüşü
  • Web Components'in uzun ömürlülüğü üzerine bir yazı; JavaScript framework'leriyle karşılaştırılıyor
  • Yorumcular, makalede htmx kütüphanesinden bahsedilmediğini ve bunun web bileşenlerinden farklı olarak sunucuyla durumu senkronize etmeye odaklandığını belirtiyor
  • htmx, bağımlılığı olmaması ve geri uyumluluğa odaklanması nedeniyle birçok JavaScript kütüphanesinden farklı olarak övgü alıyor
  • Web Components'te durum yönetimi çözülmemiş bir sorun olarak gösteriliyor; geliştiricilerin bunu wrapper framework'ler olmadan doğrudan ele alması gerekiyor
  • Web Components'in performansının sanıldığı kadar önemli olmadığı, örnekleme maliyeti nedeniyle bazı küçük öğelerin Web Components'ten geri alındığı belirtiliyor
  • Web Components, hangi framework kullanılırsa kullanılsın yeni bir sayfaya kolayca eklenebilmesi ve stil kapsülleme sağlaması nedeniyle övülüyor
  • Bazı yorumcular, Web Components gibi statik çözümler yerine JS framework'lerinin ilerlemesini ve iyileştirilmesini tercih ettiklerini ifade ediyor
  • Yeni bir projeye başlarken ekibin bilgi ve becerilerini dikkate almanın önemi vurgulanıyor
  • Rails Hotwire, Phoenix Liveviews ve Laravel Livewire gibi sunucu tarafı çözümler ilgi çekici gelişmeler olarak anılıyor
  • Web Components, sunucuda çalıştırılamaması ve bunları render etmek için istemci tarafı JS gerektirmesi nedeniyle eleştiriliyor
  • Web Components'te slot kullanımının kafa karıştırıcı ve karmaşık olduğu, bu yüzden uygulama geliştirme için daha az çekici hale geldiği belirtiliyor
  • DOM API, bileşenleri bir araya getirip uygulamayı çalıştırmak için uygun olmadığı gerekçesiyle eleştiriliyor
  • Web Components, özellik ve event adları için otomatik tamamlama gibi işlevlerde editör desteğinin yetersiz olması nedeniyle eleştiriliyor
  • Web Components'teki bazı temel işlevlerin, örneğin formlar içindeki butonların, hâlâ çözülmemiş sorunlar olarak kaldığı belirtiliyor