Taş Devri
İnternetin yaygınlaşmasıyla birlikte, websiteleri, kişisel siteler ve haber siteleri ilk oluşturulan websiteleri arasındaydı.

Başlangıçta websiteleri pek interaktif özellikler sunamıyordu. Browserlarda JavaScript motorlarıyla ilgili güvenlik problemleri yaşandığı için bazı kullanıcılar JavaScript özelliğini tamamen devre dışı bırakabiliyordu. Bu durum, websiteleri tasarlanırken JavaScript’in devre dışı kalma ihtimali göz önünde bulundurularak kullanıcı deneyimi problemlerinin alternatif yöntemlerle (fallback) çözülmesine yol açtı. Ayrıca, kullanıcıya sitenin düzgün görüntülenebilmesi için JavaScript’i etkinleştirmesi gerektiğini belirten mesajlar da görüntülendi.

JavaScript’in erken dönemlerinde sadece güvenlik sorunları değil, aynı zamanda bir tarayıcıda çalışan bir kodun başka bir tarayıcıda çalışmaması gibi problemler de mevcuttu. Ya da yaygın olarak kullanılan bir tarayıcı, inatla güncellenmiyor ve yeni komut setlerini desteklemiyordu.

Macromedia Flash
Bu dönemde, süper özellikleriyle Flash sahneye çıktı ve herkesin gönlünü kazandı. Ancak Apple’ın özellikle iPhone ile mobilde yükselişi ve güvenlik problemleri nedeniyle Flash’ı iPhone’a sokmaması sonucu, Flash ön yüzün mezarlığına yerini bıraktı.

jQuery
Hemen hemen aynı dönemde, yeni ve küçük bir dev olan jQuery hayatımıza girdi. jQuery, az kodla çok iş yapma imkanı, animasyonlar, küçük dosya boyutu ve farklı tarayıcılarda kodun çalışmasını garanti etmesi (cross-browser compatibility) gibi avantajlarıyla öne çıktı. Elbette birçok rakibi çıktı; bazıları animasyon işini abartan, bazıları ise nesne yönelimli programlamayı ön plana çıkaran yaklaşımlar benimsedi. Ancak hepsi, yüksek dosya boyutları nedeniyle yarışta geri kaldı.

Angular js
Aslında, bilgisayar bilimlerinde çok eski bir mimari olan MVC (Model-View-Controller), Ruby on Rails ile web uygulamalarında bir akım başlattı. Daha sonra bilinen tüm güncel diller, MVC versiyonlarını ya da Ruby on Rails alternatiflerini sunmaya başladılar.

Bir yazılımcı, eski bir Google çalışanı, işi abartarak MVC’yi sadece backend’de uygulamakla kalmayıp, benzer bir mimariyi ön yüzde de uygulamayı ve hatta component-based design’ı bu framework’e eklemeyi önerdi. Bu sayede AngularJS ortaya çıktı. İlk bakışta oldukça havalı görünen bu framework, kurumsal yöneticiler tarafından benimsendi. Fakat göz ardı edilen bir konu vardı: framework’ün dosya boyutu. Ofiste hızlı bağlantılarla test eden ve sürekli kullandığı uygulamaların tarayıcı önbelleğinde yüklendiğinden habersiz olan yöneticiler, bu framework’ün yavaşlığını fark etmediler. Angular da çok popüler oldu ve artık Angular bilmeden front-end işi bulmak zorlaştı.

React js
Sonrasında ReactJS hayatımıza girdi. Single Page Application (SPA) mimarisinin azimli savunucusu olan bu JavaScript kütüphanesi, W3C’nin belirlediği mimariyi bile beğenmeyerek HTML’i de JavaScript ile yazmak gibi tartışmalı uygulamalara girişti. Bir süre sonra bazı uzmanlar, React’in performansının beklenenin altında olduğunu ve SEO açısından sorunlar yaşadığını fark ederek Next.js’i yayınladı. Next.js, SPA yapıyı sunucuda derleyip Multi-Page Application (MPA) haline getirirken, yanında SPA kodlarını da yükleyerek karmaşık bir yapı oluşturdu. Bu durum, aslında gereksiz yere karmaşıklaşmış bir yapı ortaya çıkardı. Şu anda, React bilmeden front-end işi bulmak neredeyse imkansız hale geldi.

Peki, daha modern, minimal ve gerçekten hızlı bir JavaScript kütüphanesi kullanma zamanı gelmedi mi?

Tay Js

Hızı önplanda tutan ön yüz geliştiriciler için aydınlanma vakti geldi.

jQuery’nin komut seti, cross-browser compatibility, OOP desteği, TypeScript gibi strict typed language özellikleri ve 1KB sıkıştırılmış boyutuyla mevcut kütüphanelerle arasındaki hız farkı, gün ile gece arasındaki fark kadar belirgin. TAY, bu avantajları sunarak geliştiricilere daha hızlı ve verimli bir geliştirme deneyimi vaat ediyor.

Tay JS Github Sayfası
Tay JS Resmi Sayfası

İlgili blog yazıları:
React Gerçekten Hızlı mı? En Hızlı Web Sitesi İçin Hangi JavaScript Kütüphanesini Kullanmalısınız?
Speed Review for Reactjs & Nextjs Headless E-Commerce