Javascrip{filter}t çok garip bir adlandırma geçmişine sahiptir.
İlk olarak 1995 yılında Netscape Navigator kapsamında yayımlandı ve yeni dile Livescrip{filtering}t adı verildi. Bir yıl sonra, o dönemde Java hakkındaki medya heyecanını yakalamak için adı geçici olarak Javascrip{filtering}t olarak değiştirildi (tabii ki, Java ile Javascrip{filtering}t arasındaki ilişki Lei Feng ve Lei Feng Kulesi ile aynı - bununla hiçbir ilgisi yok)
Eğri fındık şakası hiç komik değil
Çevirmenin notu: Wikipedia'nın Javascrip{filter}t girişi bu tarihi daha ayrıntılı şekilde anlatıyor
1996'da Netscape, Javascrip{filtering}t'yi ECMA International'a (Avrupa Bilgisayar Üreticileri Derneği) standartlaştırma için sundu ve nihayet ECMAscrip{filtering}t adlı yeni bir dil standardını kesinleştirdi. O zamandan beri, ECMAscrip{filtering}t, tüm Javascrip{filtering}t uygulamalarının temelini oluşturmuştur, ancak tarihsel ve piyasa nedenlerinden dolayı (görünüşe göre ECMAscrip{filtering}t sevilen bir isim değildir...... Gerçekte, standardı çağırmak için sadece ECMAscrip{filter}t kullanıyoruz ve genellikle bu dili çağırmak için Javascrip{filter}t kullanıyoruz.
Terimler:
- Standart: Onu diğer şeylerden ayıran kuralları tanımlayan bir dizi kural
- Uygulama: Bir standardın özel uygulaması/gerçek dünya uygulaması
Ancak, Javascrip{filtering}t geliştiricileri buna pek önem vermiyor, çünkü ECMAscrip{filtering}t, kuruluşundan bu yana geçen 15 yılda pek değişmedi ve birçok gerçek dünya uygulaması zaten standarttan çok farklı. Aslında, ECMAscrip{filtering}t'nin ilk sürümünün çıkışından kısa süre sonra iki versiyon daha piyasaya sürüldü, ancak 1999'daki ECMAscrip{filter}t 3'ün çıkışından bu yana, resmi spesifikasyona on yıl boyunca başarılı bir değişiklik eklenmedi. Bunun yerine, tarayıcı üreticileri kendi dillerini genişletmek için çabalıyor ve web geliştiricileri bu API'leri denemek ve desteklemek zorunda kalıyor. ECMAscrip{filter}t 5'in 2009'da piyasaya sürülmesinden sonra bile, bu yeni spesifikasyonların tarayıcılardan yaygın destek alması birkaç yıl sürdü, ancak çoğu geliştirici yine de ECMAscrip{filtering}t 3 tarzı kod yazdı ve bunları öğrenmeye ihtiyaç duymadı.
Çevirmenin notu: ECMAscrip{filter}t sürüm 4'ün taslağı çok agresif olduğu için terk edildi ve Adobe'nin Actionscrip{filtering}t 3.0, ECMAscrip{filtering}t baskı 4'ün tek uygulamasıdır (Flash neredeyse web'i birleştirdi)
2012'ye gelindiğinde, aniden işler değişmeye başladı. IE'nin eski sürümleri için desteğin sona erdirilmesi için bir baskı var ve ECMAscrip{filter}t 5 (ES5) tarzında kod yazmak daha makul. Aynı zamanda, yeni bir ECMAscrip{filtering}t spesifikasyonu piyasaya sürülür. Bu noktada, insanlar çeşitli Javascrip{filtering}t uygulamalarını ECMAscrip{filter}t spesifikasyonu için sürüm desteği açısından tanımlamaya alışmaya başladılar. Bu yeni standart başlangıçta ES olarak adlandırılıyordu. Uyum. 2015 yılında, ECMAscrip{filter}t spesifikasyonunun taslağını geliştiren komite TC39, yeni standartları tanımlama sistemini yılda bir olarak değiştirmeye karar verdi; yani her yeni özellik onaylandıktan sonra eklenebilir; önceki spesifikasyon ise tüm taslak tamamlandıktan ve tüm özellikler uygun hale geldikten sonra tamamlanır. Sonuç olarak, ECMAscrip{filtering}t sürüm 6, Haziran ayında yayımlanmadan önce ECMAscrip{filtering}t 2015 (ES2015) olarak yeniden adlandırıldı.
Hâlâ dekoratörler, asenkron-wait ve statik sınıf özellikleri dahil olmak üzere birçok yeni Javascrip{filter}t özelliği veya sözdizimi önerilmektedir. Genellikle ES7, ES2016 veya ES olarak adlandırılırlar. Sonra, ama aslında sadece öneriler veya olasılıklar olarak adlandırılabilir, sonuçta ES2016 spesifikasyonu henüz tamamlanmamış ve hepsinin tanıtılması ya da hiçbiri tanıtılmaması mümkün. TC39, bir öneriyi 4 aşamaya ayırıyor ve her önerinin şu anda hangi aşamada olduğunu Babel'in web sitesinde kontrol edebilirsiniz.
Peki, bu terimleri nasıl kullanıyoruz? Aşağıdaki liste size yardımcı olabilir:
- ECMAscrip{filter}t: ECMA International tarafından standartlaştırılmış ve TC39 komitesi tarafından denetlenen bir dil. Genellikle standardın kendisine atıfta bulunmak için kullanılır.
- Javascrip{filtering}t: ECMAscrip{filtering}t standardının çeşitli uygulamaları için en yaygın addır. Bu terim, ECMAscrip{filtering}t spesifikasyonunun belirli bir sürümüyle sınırlı değildir ve ECMAscrip{filtering}t'nin herhangi bir versiyonunun farklı derecede uygulanması için kullanılabilir.
- ECMAscrip{filtering}t 5 (ES5): ECMAscrip{filtering}t'nin beşinci baskısı, 2009'da standartlaştırılmıştır. Bu spesifikasyon, tüm modern tarayıcılarda oldukça kapsamlı şekilde uygulanmıştır.
- ECMAscrip{filter}t 6 (ES6) / ECMAscrip{filter}t 2015 (ES2015): ECMAscrip{filtering}t'nin altıncı baskısı 2015 yılında revize edilip standartlaştırıldı. Bu standart, çoğu modern tarayıcıda kısmen uygulanmaktadır. Farklı tarayıcıların ve araçların nasıl uygulandığını görmek için bu uyumluluk tablosuna bakabilirsiniz.
- ECMAscrip{filter}t 2016: ECMAscrip{filter}t revizyonunun yedinci baskısı, gelecek yaz yayınlanması planlanıyor. Bu spesifikasyona dahil edilecek özel özellikler henüz kesinleşmemiştir
- ECMAscrip{filter}t Önerileri: ECMAscrip{filter}t standardının gelecekteki sürümlerine dahil edilmek üzere değerlendirilen özellik ve sözdizimi önerileri beş aşamadan geçecektir: Saman Adam, Teklif, Taslak, Aday ve Bitmiş.
Bu blog boyunca, ECMAscrip{filtering}t'in mevcut sürümüne ES6 olarak atıfta bulunacağım (çünkü çoğu geliştirici buna en çok alışkındır), gelecek yılki spesifikasyonu ES2016 olarak (çünkü ES6/ES2015'in aksine, bu isim standartlaşma sürecinde kullanılacak) ve henüz kesinleşmemiş veya taslak hazırlanmamış gelecekteki dil kavramlarını ECMAscrip{filtering}t önerileri veya Javascrip{filter}t proposal. Bu makaleyi kafa karışıklığına yol açabilecek her durumda elimden geleni yapmaya çalışacağım.