Geliştirme dünyası hız kesmiyor ve web platformları her geçen gün daha yetenekli hale geliyor. Bir zamanlar bize 'bu iş için harici bir kütüphaneye ihtiyacın var' derken, artık çoğu tarayıcı bu görevleri kendi içinde üstlenmeye başladı. Bu durum, projelerimizdeki bağımlılık (dependency) listelerini oldukça şişiriyor ve gereksiz yere büyük JavaScript dosyaları yüklememize neden oluyor.
Çoğumuz projeye harici bir kod parçasını ekliyor, işini yapmasını izliyoruz ve bir daha asla içeriğini kontrol etmiyoruz. Ancak tarayıcılar sürekli gelişirken, bugün projemizde yüklü olan birçok kütüphane artık doğal olarak modern bir web platformu özelliği haline gelmiş durumda. Ortalama boyutlarıyla bir orta ölçekli JavaScript uygulamasında onlarca kilobaytlık gereksiz kod parçasını kendi başımıza halledebilecek özellikler görebilirsiniz.
Örneğin, tarih ve sayı biçimlendirme işlemleri, basit HTTP istekleri veya araç ipuçları (tooltip) gibi işlemler eskiden mutlaka harici bir kütüphane gerektirirdi. Bunların çoğu artık web platformunda yerleşik olarak sunuluyor; yani dışarıdan hiçbir şeye ihtiyacınız kalmıyor.

Geliştiricilerin bu durumu gözden kaçırmasının sebebi genellikle tembellik değil, basitçe bağımlılıklarını düzenli olarak denememek ya da tarayıcıların ne kadar hızlı değiştiği konusunda yeterince haberdar olmamak. Çoğu zaman güvenlik açıklarını kontrol etmek için npm audit komutunu çalıştırıyoruz ancak 'bu kütüphane artık tarayıcının yapabildiği bir şeyi hâlâ mı yapıyor?' gibi kritik soruları sormuyoruz.

Bu yazımızda, projenizdeki kod bloğunu inceliyor ve modern web standartlarını kullanarak bu gereksiz şişkinliği nasıl azaltabileceğinizi adım adım gösteriyoruz. Tek tek bağımlılıklara bakmak yerine birbirini değiştirebilecek kütüphane kümeleri üzerinde çalışarak en hızlı kazanımları elde edeceğiz.