JavaScript Hakkında Herşey

JavaScript'in tarihi neredeyse dilin kendisi kadar tuhaftır. Son 25 yılda, Netscape için aceleye getirilmiş bir prototipten İnternetin kullanımının da yaygınlaşması ile birlikte yedi yıl üst üste dünyanın en popüler dili haline geldi. Zorunluluktan yaratıldı, Facebook ve YouTube gibi dünyanın en büyüklerinden bazıları da dahil olmak üzere bugün web sitelerinin% 95,2'sini (1,52 milyar) oluşturmak için kullanılıyor. Bu olmadan, Google Haritalar ve eBay gibi popüler ve kullanışlı web uygulamalarına sahip olamazdık. JavaScript Dilinin Gelişim Sürecine geçmeden önce biraz JavaScriptten bahsetmek istiyorum.
JavaScript nedir?
Javascript, HTML işaretleme dilini desteklemek amacıyla 1995 yılında Brendan Eich tarafından geliştirilmiştir. JavaScript, web siteleri geliştirmek için kullanılan üç temel dilden biri olan bir betik dilidir. HTML ve CSS bir web sitesi yapısı ve stili verirken, JavaScript web sitenize işlevsellik ve davranışlar eklemenize izin vererek web sitenizin ziyaretçilerinin içerikle birçok yaratıcı yolla etkileşime girmesine olanak tanır. JavaScript, öncelikle bir istemci tarafı dilidir, yani bilgisayarınızda tarayıcınızın içinde çalışır. Bununla birlikte, daha yakın zamanda Node.js'nin kullanıma sunulması, JavaScript'in sunucularda da kod yürütmesine izin verdi. JavaScript, piyasaya sürüldüğünden beri Java, Flash ve diğer dilleri geride bıraktı çünkü öğrenmesi nispeten kolay, özgür ve açık bir topluluğa sahip ve en önemlisi inanılmaz derecede kullanışlı, geliştiricilerin milyonlarca kitleye sahip uygulamaları hızlı bir şekilde oluşturabiliyor.
Betik(Script)
Mevcut bir varlık veya sistem üzerinde hareket etmek için özel olarak tasarlanmış bir programlama dili.
Bir programlama dilini bir betik dili yapan şeyin ne olduğuna dair genel bir fikir edinmek için, "yürü", "koş" ve "zıpla" komutlarını düşünün. Bu eylemler, onları gerçekleştirmek için bir şey gerektirir, belki bir kişi, bir köpek veya bir video oyunu karakteri. Bu komutları uygulayacak bir oyuncu olmadan, "yürümek", "koş" ve "zıpla" komutları mantıklı olmaz. Bu eylemler dizisi, harici bir varlığı manipüle etmeye odaklanan bir komut dosyası diline benzer.
HTML(Hypertext Markup Language), CSS(Cascading Style Sheets) ve JS(Java Script) dilleri birlikte kullansaydık ortaya nasıl bir şey çıkardı?
sade HTML kullanarak bir çöp adam çizseydik,
iken, Buna CSS eklersek Alttaki gibi bir görüntü elde ederiz.
son olarak html + css yanına javascript kodlarınıda dahil ettiğimizde alttaki gibi (mecazi bir görüntü ) bir görüntü karşımıza çıkar.
JavaScript bir varlığı veya sistemi hareketli kılmamıza yarıyor aşağıdaki resim hareketli değil ancak örnek vermek açısından göstermek istedim.
WEB NEREDE DOĞDU ? (ilk tohum)
1983 de STELLA uydu iletişim projesi sırasında, dünyada ilk olarak Internet Protokolu adı kullanıldı. 1984 de CERN de Amerika Savunma Bakanlığı’nın kullandığı standart TCP/IP iletişim protokolü, yerleştirildi. 1986 da Andres Berglund, SGML(Standard Generalized Markup Language) de geliştirdiği bu yöntem ile, ilk SGML ISO standardını rekor bir zamanda basmayı başardı. Internetin bugünkü haline gelişinin yolu açılmış oldu. İngiliz bilim adamı Tim Berners-Lee, 1989 yılında CERN'de çalışırken World Wide Web'i (WWW) icat etti. Web başlangıçta, dünyanın dört bir yanındaki üniversitelerdeki ve enstitülerdeki bilim adamları arasında otomatik bilgi paylaşımı talebini karşılamak için tasarlanmış ve geliştirilmiştir. CERN izole bir laboratuvar değil, 100'den fazla ülkeden 17.000'den fazla bilim adamını içeren geniş bir topluluğun odak noktasıdır. Tipik olarak CERN sahasında biraz zaman geçirmelerine rağmen, bilim adamları genellikle kendi ülkelerindeki üniversitelerde ve ulusal laboratuvarlarda çalışırlar. Güvenilir iletişim araçları bu nedenle çok önemlidir. WWW'nin temel fikri, gelişen bilgisayar, veri ağları ve hypertext teknolojilerini güçlü ve kullanımı kolay bir küresel bilgi sistemine birleştirmekti.1990’da CERN Avrupa’nın en büyük Internet Sunucusu haline geldi ve Internet İletişimin yaygınlaşmasında diğer ülkeler için bir öncü görevi yaptı.Bu makale ilk web tarayıcısı hakkındadır. Dağıtılmış Hypertext sistemi için WorldWideWeb (daha sonra yazılım ve World Wide Web arasındaki karışıklığı önlemek için Nexus olarak yeniden adlandırıldı ) ilk web tarayıcısı ve düzenleyiciydi . 1994'te kullanımdan kaldırıldı. Yazıldığı sırada, var olan tek web tarayıcısı ve ilk WYSIWYG HTML editörü idi .
MOSAIC
1980’lerde, bilgisayar kullanımında, kişisel bilgisayarlar yer almaya başladı. Bu bir devrimdi. Kişisel bilgisayarların sağladığı kullanım kolaylığı, ve bilgisayarlara erişilebilirliliğin artması ile bilgisayar sayısı da hızla yükselmeye başladı. Kişisel bilgisayarlar, Apple ve IBM uyumlu olarak sadece iki sistemde üretiliyordu ve IBM uyumlulular çok daha yaygındı. 1995’lerde Microsoft Windows işletim sistemini geliştirince, IBM uyumlu bilgisayarlar daha da ağırlık kazandı ve artık Window temelli bilgisayarlar olarak adlandırılmaya başlandı. 1991’de Tim Bernes-Lee CERN de WWW iletişim sistemini açıkladığında dünyada bilgisayar kullanımı büyük bir yoğunlukla kişisel bilgisayarlara kaymıştı ve bunlar arasında, Windows temelli olanlar en yaygın olanları idi. O günlerde Windows işletim sistemi henüz gelişme halinde olmasına karşın, kullanıcılara multimedya destekli renkli, seslendirilebilen belgeler ile çalışabilme olanağını sağlayabiliyordu. Masaüstü yayıncılık, bilgisayar destekli resim işleme (rendering) ve bilgisayar destekli tasarım (CAD) giderek yaygınlaşan, eski teknikleri devreden çıkartacak kadar yoğunlaşan bilgisayar teknikleri idi. Bunun yanında, Internet’ten indirilen dosyalar, sadece metinleri destekleyebilen basit metin yazım programları gibi hiç bir çekiciliği olmayan belge çözümleyicilerdi. Bu aşamada, bilim insanları Internet erişimini büyük coşku ile karşıladılar fakat genel kullanıcılar, içeriğin sunumu çekici bulmadığı için fazla ilgilenmedi. Microsoft da bu aşamada fazla kullanım desteği bulmayan bu alanla pek ilgilenmedi. Bu durum hızla ve hiç kimsenin öngörmediği şekilde değişecekti. 1992’de Illinois Universitesi Urbana kampüsünde bulunan ve kısa adı NCSA olan National Center for Supercomping Applications da çalışan Marc Andreasen ve arkadaşları, hipermetin belgelerinde yer alan resimleri de metinlerle birlikte aynı sayfada gösterebilen Mosaic olarak adlandırdıkları bir belge çözümleyicisi üzerinde çalışmaya başladılar.
Ocak 1993 Mosaic Browser, Gore tasarısından sağlanan fonlarla Illinois Üniversitesi'nde Marc Andreessen ve Eric Bina tarafından geliştirildi . İlk yaygın web tarayıcısı olarak ortaya çıkıyor.
1993’de Mosaic’in ilk sürümü indirilebilir hale geldi. Mosaic belge çözümleyicisi, günümüzde kullanılan tüm belge çözümleyicilerinin (daha sonra browser adı ile anılacak) temellerini oluşturmaktadır.
Netscape Belge Çözümleyicinin İlk Sürümü
1990'ların başından ortasına kadar internet için önemli bir dönemdi. Netscape ve Microsoft gibi önemli oyuncular, Netscape Navigator ve Microsoft'un Internet Explorer'ı kafa kafaya tarayıcı savaşlarının ortasındaydı. Gelecekte Netscape hızla büyüyecek ve tarayıcı pazarının %80’ine bile ulaşacak ancak Microsoft tarafından Windows ile birlikte verilen ücretsiz tarayıcı Internet Explorer, Netscape'i tarayıcı pazarından silecek.
Marc Andreasen ve arkadaşları, 1993’de NSCA’dan ayrılarak kendi şirketlerini kurdular ve Mosaic temeline dayanan Mozilla kod adlı ilk ticari belge çözümleyiciyi geliştirmeye başladılar. Bu belge çözümleyicinin ilk sürümü 1994’de Netscape Navigator 1.1 sürümü olarak kullanıma açıldı.
hızla büyüyerek tarayıcı pazar payının yaklaşık% 80'ine ulaşıldı, ancak web tasarımcılarının sitelerini daha dinamik hale getirmek için "script" bir dile ihtiyaçları vardı. İlk başta Java'ya döndüler, ancak daha dinamik ve ulaşılabilir bir şeye ihtiyaç olduğunu fark ettiler. Netscape, Window işletim sistemine standart bir uygulama pencresi olarak entegre olabiliyor, metin ve resimleri aynı anda sayfada gösterebiliyordu. Netscape’in ilk sürümü ile birlikte, Internet bir görsel şölen haline dönüştü. Bu andan sonra Internet belgeleri kullanıcıların ilgisini olağanüstü çekmeye başladı ve bu ilgi giderek arttı. Ticari kuruluşlar da bu alanın önemini kısa sürece anladılar. Önce tanıtım amaçlı belgeler yayınlanmaya başladı ve bunu mesajlaşma, elektronik ticaret, Internet bankacılığı gibi alanlar izledi.
Netscape Navigator’un ilk sürümünün çıkması ile çözümlenmesi gereken sorunlar belirlenmeye başladı. Sorunlardan ilki Netscape’in belgelerin çözümlenmesinde desteklediği etiketlerin bazılarının kendine özgü olması idi. Bunun sorun yaratacağı derhal fark edildi. Gerçekten herkes kendi eklentilerini desteklerse, ortak kullanım diye bir şey kalmayabilirdi. Bu sorunun tek çözümü, herkesin uyması gereken standartların oluşturulması idi. İkinci büyük sorun, aslında bir belge yapılandırma ve erişim sistemi olarak tasarlanmış olan web belgelerinin, görüntü sağlayacak özel elementlerle doldurulmakta olmalarıydı. Bu sorunun çözümü için, belgenin yapılanmasını ve görüntülenmesini sağlayacak araçların birbirinden farklı olmasının gerektiği ortaya konuldu. Son sorun, belgelerin yayınlandıkları sunucularda statik olarak beklemeleri, kullanıcıların etkisine yanıt verememeleri olarak saptandı. Bu sorunun çözümü için de yeni bir program dilinin oluşturulması gerektiği belirlendi. Tüm bu sorunların çözümü ve koordinasyonu için, o güne kadar düzenleyici görevini yapmakta olan
W3C(www)
İlk olarak web standartlarını oluşturacak ve çalışmaları koordine edecek bir organizasyon olmak üzere, o güne kadar çalışmaları yürütmüş olan IETF kuruluşunun adı W3C organizasyonu olarak değiştirildi ve başkanlığına Tim Berners Lee getirildi. Tim Bernes Lee halen başkanlığına devam etmektedir. 1994 yılında oluşturulan W3C, web standartlarını ifade eden uluslararası bir üye kuruluşlar topluluğudur, böylece web siteleri tüm web tarayıcılarında aynı şekilde görünür ve çalışır.
“Eski günlerde” İnternet Vahşi Batı'ya çok benziyordu. Kodlama, sayfa tasarımı ve tarayıcı uyumluluğu için birkaç standart vardı. Pek çok farklı web tarayıcısı pazar hakimiyeti için yarıştı. Standartların olmaması nedeniyle, çoğu web sitesi tüm tarayıcılarla iyi çalışmadı. Tarayıcınızda çalışmayan bir web sitesinden bilgiye ihtiyacınız varsa, ya farklı bir tarayıcı satın almanız ya da bu bilgiyi başka bir yerden almanız gerekirdi.
Neyse ki, vahşi siber sınıra biraz yasa ve düzen getirmek için Word Wide Web Konsorsiyumu (W3C) geldi. 1994 yılında kurulan W3C, web standartlarını belirleyen uluslararası bir üye kuruluşlar topluluğudur, böylece web siteleri tüm web tarayıcılarında aynı şekilde görünür ve çalışır. Misyonu, uzun vadeli büyümesini sağlayan standartlar, protokoller ve yönergeler geliştirerek World Wide Web'i tam potansiyeline ulaştırmaktır.
W3C'nin birincil odak noktası, HTML ve CSS kodlamadan web mimarisine , XML teknolojisine, web cihazlarına ve web tarama ve yazma araçlarına kadar web'in temel yönleri için protokoller ve yönergeler geliştirmektir.
Şimdiye kadar, W3C, titiz inceleme, formülasyon ve uygulama sürecinden geçmiş ve aynı zamanda "öneriler" olarak da adlandırılan 90'dan fazla standart oluşturmuştur. Bu standartlar web tasarımcıları ve web kullanıcıları için neden önemlidir ? Çünkü, konumu veya teknolojisi ne olursa olsun, web'in herkes için eşit derecede iyi çalışmasını sağlarlar.
Özellikle, XML ve CSS için W3C standartları, her web sitesinin herhangi bir tarayıcıda aynı şekilde çalışmasını sağlar. W3C uyumlu XML ve CSS kodlamasının kullanılması, arama motoru robotlarının web siteleri arasında daha hızlı ve verimli bir şekilde "gezinmesine" izin vererek arama motoru optimizasyonunu da iyileştirir. W3C uyumlu web siteleri, çapraz platform uyumludur.
HTML(Hypertext Markup Language)
HTML, web içeriği oluşturmanıza ve tasarlamanıza yardımcı olan biçimlendirme dilidir. Web belgesinin düzenini ve yapısını tanımlamak için çeşitli etikete ve niteliklere sahiptir. Verileri biçimlendirilmiş bir şekilde görüntülemek için tasarlanmıştır. JavaScript HTML sayfalarına işlevsellik ve davranışlar eklememize izin verir. JavaScript dilini Derleyici kullanmasına gerek yoktur çünkü HTML ile yorumlanabilmektedir.
“İnternetin Omurgası” XML(Extensible Markup Language)
XML’in temel amacı , internet üzerinden basitliği, genelliği ve kullanılabilirliği vurgulamaktır. XML, tüm dillerde kolayca okunabilmesi için Unicode desteğe sahip bir metinsel veri formatı olarak belirtilir.
Yazılımcılar ve programcılar için veri alışverişi, yaptıkları tüm faaliyetler arasında en temel işlemlerden biridir. Aslında internetin kendisi, büyük ölçekte veri alışverişini sağlayan, kolaylaştıran ve en nihayetinde hızlandıran bir araç olarak tanımlanır. Günümüzde, veri alışverişinin kolay ve hızlı gerçekleşebilmesi için, kullandığımız web sitelerinin arkasında işleyen sistemlerde bazı diller kullanılıyor. XML de onlardan biri.
XML(Extensible Markum Language) dili, internet tabanlı veri alışverişi gerçekleştiren platformlar – arası iletişimi standardize eden bir işaretleme dili olarak biliniyor. XML’i ortaya çıkaran ekibin başında bulunan Tim Berners Lee aynı zamanda bir başka ünlü internet teknolojisi olan HTML’nin de yaratıcısı. Uluslararası bağımsız bir organizasyon olarak bilinen World Wide Web Consortium – W3C’nin tasarladığı XML’in kullanım ve geliştirme hakları, herhangi bir ülke veya kuruluşun tekelinde bulunmuyor. Bu, XML’in geniş ve özgür bir alanda yayılmasını sağlayan özelliklerden biri olarak öne çıkarıyor. Böylece, kullanıcılar herhangi bir kısıtlama yapamadan bu alanda geliştirmeler yapabiliyor. Bu dil vasıtasıyla insanlar hem daha etkili programlama yapabiliyor hem de karmaşık verileri standardize edebilecekleri bir meta alana kavuşuyor.
XML, uygulamalar arasında bilgi alışverişi için mesajlaşma sistemleri için ortak bir sözdizimi sağlar. Önceden, her mesajlaşma sisteminin kendi formatı vardı ve hepsi farklıydı, bu da sistemler arası mesajlaşmayı gereksiz yere dağınık, karmaşık ve pahalı hale getiriyordu. Herkes aynı sözdizimini kullanırsa, bu sistemleri yazmayı çok daha hızlı ve daha güvenilir hale getirir. XML bunu yaptı.
Birbirinden çok farklılaşan kategorilerdeki verileri, kendi formatlarını muhafaza ederek tek bir alanda tutabilen XML dili ile, artık internet üzerinde çeşitli alanlardaki ve kategorilerdeki verilere daha kolay ve daha hızlı ulaşabiliyoruz. Bu açıdan XML’i günümüzde veri alışverişinin zirvesi haline gelen internetin omurgalarından biri olarak göstersek abartmış olmayız.
JSON (JavaScript Object Notation) , hafif bir veri değişim formatıdır ve tamamen dilden bağımsızdır. JavaScript programlama dilini temel alır ve anlaşılması ve oluşturulması kolaydır. JSON yapılı veri depolayan ve genellikle bir sunucu ve istemci arasında veri alışverişi için kullanılan bir formattır. Bir JSON dosyası benzer fonksiyonlara sahip olan XML ‘e (ing) daha basit ve hafif bir alternatiftir. Bu formatlar depolanan verinin eşzamansız yüklenebilmesi için uyumlu bir şekilde çalışırlar, yani bir web site sayfayı yenilemeden bilgilerini güncelleyebilir. Bu işlemi XML/RSS’e kıyasla JSON ile yapmak daha kolaydır. Bugünlerde birçok web sitesi AJAX‘ı benimsediğinden .json dosyası oldukça popüler hale gelmiştir.
JavaScript Doğdu
Netscape 1995’de Brendan Eich adlı bir çalışanına, web sayfalarına etkileşim sağlayacak bir programlama dili oluşturması için çalışma görevini verdi. Bu sıralarda Java programlama dili yaklaşık beş yıldan beri kullanımdaydı ve 1995 artık web üzerinde de kullanımı için yöntemler geliştirmeye başlanmıştı. Eich, herşeyden önce yola Java ile devam edilmesi veya salt web’e özgü yeni bir progralama dili geliştirilmesi konusunda karar vermek zorundaydı. Bu konuda Eich yepyeni bir programlama dili hazırlamaya karar verdi ve önce Mocha sonra LiveScript olarak adlandırılan dili 10 gün içerisinde, sadece belge çözümleyici üzerinde çalışabilen, script dili olarak nitelendirilen bir programlama dili geliştirdi. 1995 Eylül ayında bu programlama dili LiveScript adı altınta, Netcape Navigator 2 sürümü ile birlikte kullanıma sunuldu. O tarihlerde, büyük başarısı görülmekte olan Java programlama dilinin popülaritesinden yararlanmak için Netscape, iki dilin doğrudan bir ilişkisi olmamasına karşı, salt bir pazarlama taktiği olarak LiveScript adını JavaScript olarak değiştirdi ve 4 Aralık 1995’de çıkan Netscape Navigator 2.0 B3 sürümü Javascript desteği ile birlikte yayınlandı.
LiveScript adının JavaScript olarak değiştirilmesi, sadece bir pazarlama taktiği idi fakat sonuçları kötü oldu. Java programlama dili, derlenen ve sınıf temeline dayanan bir nesne yönelimli programlama idi. JavaScript programlama dili ise yorumlanan, yorumlayıcısı bir belge çözümleyicisi içinde yuvalanmış prototip temeline dayalı nesne yönelimli olabilmesine karşın daha çok prosedüral olarak kullanılmaya elverişli bir programlama dili idi. Programların görüntüsel benzerliğinden başka aralarında herhangi bir ilişki yoktu. Kullanıcı ise, güçlü JavaScript programlama dilini, Java programlama dilinin yeteneksiz bir alt türevi olarak algıladı. Bu yanlış anlamanın etkileri günümüzde bile halen devam etmektedir.
JavaScript Netscape şirketinin patentli bir ürünüdür. Standart ve geliştirilmesini Netscape şirketi (günümüz adıyla Mozilla Org.) yapmaktadır. JavaScript ilk 1.1 sürümünden sonra sürekli geliştirilmiş ve yeni sürümleri çıkartılmıştır. Bu sürümler arasında özellikle Netscape Navigator 3.0 sürümünde desteklenen JavaScript 1.1 dikkat çekicidir. Bu sürümün içerdiği, belge elementlerine erişim için kullanılan Belge Nesne Modeli (DOM), W3C-DOM Düzey 1 standardından önce oluşturulduğundan, DOM Düzey 0 olarak tanımlanır ve günümüzde de hem IE hemde Firefox tarafından desteklenir. Microsoft 1996’da Netscape Navigator 3.0’dan yaklaşık 3 ay sonra çıkardığı Microsoft Internet Explorer (MSIE)’de patent çekincelerinden dolayı, bir çok bakımdan JavaScript’in tıpa tıp benzeri JScript programlama dilini çıkarmıştır. Bu karar, ileride ağırlaşacak belge çözümleyiciler arası uyumsuzlukların ilk işaretlerinden biridir. Bu uyumsuzlukları giderebilmek için ECMA ile JavaScript standartlaştırılmıştır. JScript, Microsoft'un ECMAScript spesifikasyonunu uygulamasıdır. JavaScript, belirtimin Mozilla uygulamasıdır. Ve patent çekincelerinden dolayı Microsoft dilin ismini JScript olarak belirlemiştir.
ECMAScript Doğdu

JavaScript programlama dili, üç kısımında oluşmaktadır. Bunlar,
- Temel Kısım (CORE) // Standartdizasyonunu ECMA Yapmaktadır.
- Belge Çözümleyici (BOM) (Browser Object Model) // Standardı yok.
- Belge Nesne Modeli (DOM) (Document Object Model) // Standardını W3C yapmaktadır.
kısımlarıdır. ECMA 262 sadece CORE kısmını kapsamaktadır. BOM henüz hiç standartlaşmamıştır, DOM ise W3C tarafından standartlaşmıştır. Bugün W3C-DOM düzeyi 3 standartları olması karşın ancak DOM-Düzey 1 büyük bir kısmı ile ortak olarak desteklenmektedir.
- ECMAScript bir standarttır.
- JavaScript bir standarttır.
- ECMAScript bir spesifikasyondur.
- JavaScript, ECMAScript standardının bir uygulamasıdır.
- ECMAScript, standartlaştırılmış JavaScripttir.
- ECMAScript bir dildir.
- JavaScript, ECMAScript'in bir lehçesidir.
- ECMAScript JavaScript dir.
Asynchronous JavaScript and XML(AJAX), Bir Hareketi Başlatan Makale
1990'ların başından ortasına kadar, çoğu Web sitesi tam HTML sayfalarına dayanıyordu. Her kullanıcı işlemi, sunucudan tamamen yeni bir sayfanın yüklenmesini gerektirdi. Bu süreç, kullanıcı deneyiminin yansıttığı gibi verimsizdi: tüm sayfa içeriği kayboldu, ardından yeni sayfa belirdi. Tarayıcı, kısmi bir değişiklik nedeniyle bir sayfayı her yeniden yüklediğinde, yalnızca bazı bilgiler değişmiş olsa bile tüm içeriğin yeniden gönderilmesi gerekiyordu. Bu, sunucuya ek yük getirdi ve bant genişliği performans üzerinde sınırlayıcı bir faktör haline getirdi .
2005 yılı JavaScript için büyük bir yıl oldu. Jesse James Garrett tarafından yayınlanan bir makale , JavaScript içeren devrim niteliğinde bir teknoloji paketi olan Ajax'ı tanıttı. Ajax,
AJAX Nedir ve Nasıl Çalışır?
“AJAX Nedir?” AJAX, Asynchronous JavaScript and XML, Türkçe olarak Eşzamansız ve XML’in kısaltılmışıdır. Sunucuya gelen herhangi bir isteği arkaplanda işleyerek web uygulamalarının eşzamanlı olmadan çalışmasına olanak sağlayan bir takım web geliştirme teknikleridir. Bir şey anlamadınız mı? AJAX nedir sorusunun cevabı yeterince açık değil mi? Merak etmeyin her terminolojiyi ayrı ayrı açıklayacağız.
JavaScript tanınmış bir kodlama dilidir. Öbür fonksiyonların yanında, bir web sitenin dinamik içeriğini yönetir ve dinamik kullanıcı etkileşmesine izin verir. Adından da anlayabileceğiniz gibi , eXtensible Markup Language – Genişletebilir İşaretleme Dili, XML, HTML gibi işaretleme dilinin başka bir değişkenidir. Eğer HTML veriyi göstermek için tasarlandıysa, XML veriyi kapsamak ve taşımak için tasarlanmıştır.
Hem JavaScript, hem de XML AJAX’da eşzamanlı olmadan çalışır. Sonuç olarak, AJAX kullanan herhangi bir web uygulaması tüm sayfayı yenileme ihtiyacı olmadan veri yollayabilir ve alabilir.
web sayfalarının daha çok yerel masaüstü uygulamaları gibi görünmesine izin vererek kullanıcı deneyimini büyük ölçüde iyileştirdi. Bu, JavaScript'i profesyonel bir programlama dili olarak gerçekten öne çıkardı.
Bu makale JavaScript topluluğunun kurucu omurgalarından biri olarak kabul edilmektedir. O zamanlar JavaScript'in basit şeyler yaparken ayrıntılı doğası ve tarayıcılar arasındaki uyumsuzluk sorunları da dahil olmak üzere birçok zorluğu vardı. Topluluk, Dojo ve Mootools ve jQuery gibi büyük ve popüler JavaScript çerçeveleri ve kitaplıkları ile gelişti.
NODE.JS (27 Mayıs 2009)
Node.js, ile birlikte javaScript her türlü platform da çalışabilir(çapraz platform) hale geldi. Node.JS, JavaScript kodunu bir web tarayıcısı dışında da yürütebilmeyi sağlayan açık kaynaklı ortamdır. Node.js, geliştiricilerin JavaScript'i komut satırı araçları yazmak için ve sunucu tarafı komut dosyası oluşturmak için kullanmasına olanak tanır. sayfa kullanıcının web tarayıcısına gönderilmeden önce dinamik web sayfası içeriği üretmek için sunucu tarafında komut dosyalarını çalıştırır . Sonuç olarak, backend ve frontend geliştirilebilir. Yani Node.js , sunucu tarafı ve istemci tarafı komut dosyaları için farklı diller yerine tek bir programlama dili etrafında web uygulaması geliştirmeyi sağlar. Node.js ilk olarak Ryan Dahl tarafından 2009 yılında , sunucu tarafı JavaScript ortamının, Netscape'in LiveWire Pro Web'inin tanıtımından yaklaşık on üç yıl sonra yazılmıştır .
Tasarım Süreci
Vers | Resmi Ad | Yenilikler |
ES1 | ECMAScript 1 (1997) | İlk yayın (First edition) |
ES2 | ECMAScript 2 (1998) | Editoryal değişiklikler(Editorial changes) çoğunlukla değişmeden standartlaştırılmıştır. |
ES3 | ECMAScript 3 (1999) | Added regular expressions Added try/catch |
ES4 | ECMAScript 4 | Karanlık çağlar 2000 - 2008. Teknoloji balonunun patlamasından sonra, JS çok sayıda aksilik ve ES4'ün başarısızlığını yaşadı. Microsoft'un Internet Explorer'ı, tarayıcı pazar payının yaklaşık% 90'ına sahip. ECMAScript'e katkıda bulunurlar, ancak çoğunlukla kendi kurallarına göre oynarlar ve tarayıcılarında JS için yeni özellikler sunarlar. En önemlisi, AJAX geleceğin tek sayfalı uygulamalarına zemin hazırlar. |
ES5 | ECMAScript 5 (2009) | Rönesans 2009 - 2015. JavaScript tam olarak ilerliyor ve geliştirici ekosisteminde verimli bir büyüme görüyor Mayıs 2009 . Ryan Dahl , Google'ın V8 projesiyle NodeJS'yi geliştiriyor. Ekim 2010 . Hem AngularJS hem de Backbone framework ilk sürümlerini görüyor. Mayıs 2013 . Facebook, ReactJS'yi yayınladı . Önümüzdeki yıllarda hızlı bir büyüme görüyor, bugün birçok uygulamada kullanılan bildirimsel UI modellerini sağlamlaştırıyor. Added “strict mode” ES5 ile gelen Strict Mode Kelime anlamı olarak katı kuralları kullan manasına gelmektedir. Strict Mode (kısaca SM) EsmaScript 5 ile birlikte duyurulan ve JavaScript’deki esnek yazım biçimini ortadan kaldıran yeni bir özelliktir. Bu özelliği kullanarak yazılan JavaScript kodunun bütün yorumlayıcılarda aynı şekilde yorumlanması hedeflenmiştir. Added JSON support Added String.trim() Added Array.isArray() Added Array iteration methods |
ES6
| ECMAScript 6 (2015) | 2015 . ES6, dile let / const, ok işlevleri, sınıflar, vaatler ve daha fazlası gibi (çoğu başarısız ES4 kaynaklı) bir dizi yeni özellik getiriyor. Babel ve Typescript gibi aktarıcılara yol açar, böylece geliştiriciler modern kod yazabilir, ancak yine de ES5 / 3 çalıştıran eski tarayıcıları destekler. Added let and const |
ES7 | ECMAScript 7 (2016) | Added exponential operator (**) Added Array.prototype.includes |
ES8 | ECMAScript 8 (2017) | Added string padding Added Object.entries Added Object.values Added async functions Added shared memory |
ES9 | ECMAScript 9 (2018) | Added rest / spread properties Added asynchronous iteration Added Promise.finally() Additions to RegExp |
ES10 | ECMAScript 10 (2019) | Array#{flat,flatMap} Object.fromEntries String#{trimStart,trimEnd} Symbol#description try { } catch {} // optional binding JSON ⊂ ECMAScript well-formed JSON.stringify stable Array#sort revised Function#toString |
ES11 | ECMAScript 11 (2020) | Added rest / spread properties import() introduces a new dynamic way to import modules by returning a Promise flat() and flatMap() Nullish Coalescing Operator Operational Chaining Operator Private classes variables Promise allSettled() Object from Entries() BigInt() |
Dilin Genel Görünümü ve Değerlendirilmesi
JavaScript, piyasaya sürüldüğünden beri Java, Flash ve diğer dilleri geride bıraktı çünkü öğrenmesi nispeten kolay, özgür ve açık bir topluluğa sahip ve en önemlisi inanılmaz derecede kullanışlı, geliştiricilerin milyonlarca kitleye sahip uygulamaları hızlı bir şekilde oluşturabiliyor. Derleyici kullanmanıza gerek yoktur çünkü web tarayıcıları HTML ile yorumlamaktadır. İstemci(client) tarafı komut dosyasının kullanıcıyla etkileşime girmesine ve dinamik sayfalar oluşturmasına izin veren web sayfalarının bir parçası olarak kullanılabilir. en yaygın olarak, uygulamaları istemci tarafında çalışırken Node.js, ile birlikte javaScript her türlü platform da çalışabilir hale geldi. yorumlanan, yorumlayıcısı bir belge çözümleyicisi içinde yuvalanmış Prototip tabanlı programlama dili olan Javascript, nesne yönelimli bir anlayışa sahiptir. Yani sınıfsız bir yapıya sahiptir ve nesne tabanlı bir programlama dili olarak tanımlanmaktadır. modüler, dinamik, nesne yönelimli olabilmesine karşın daha çok prosedüral olarak kullanılmaya elverişli interaktif bir programlama dilidir.
JavaScript’in Avantajları Nelerdir?
JavaScript diğer programlama dilleri ile kıyaslandığında birçok avantajı olduğunu söyleyebiliriz. JavaScript avantajlarından bazıları ise şunlardır:
- Derleyici kullanmanıza gerek yoktur çünkü web tarayıcıları HTML ile yorumlamaktadır.
- Öğrenmesi kolaydır, diğer yazılım dillerinden daha hızlı öğrenilir.
- Hataları tespit etmek ve çözmek daha kolaydır.
- Belirli web sayfası öğelerine göre ayarlanabilmektedir.
- Birden fazla platformda ya da tarayıcıda çalışabilmektedir.
- JavaScript kullanarak input değerlendirmesi yapılabilir
- Manuel very kontrollerinin azaltılmasını sağlamaktadır.
- Web siteleri interaktif hale getirir, kullanıcı dostudur.
- Diğer yazılım dilleri ile kıyaslandığında daha hızlı ve hafif olduğu görülmektedir.
JavaScript’in Dezavantajları Nelerdir?
Yazımızın giriş bölümünde de belirttiğimiz gibi günümüz web sitelerinin neredeyse yüzde 90’ı JavaScript kullanmaktadır. Bu kadar yaygın olması kötü niyetli kişi ve uygulamaların da hedefi haline gelmesine sebep olmaktadır. Güvenlik açıklarını tespit eden kötü niyetli kişiler nedeniyle de karşımıza bazı JavaScript dezavantajlarını çıkarmaktadır. JavaScript’in dezavantajlarını şu şekilde sıralayabiliriz:
- Güvenlik açıklarına karşı zayıftır.
- Zararlı kod çalıştırmak için bilgisayarlarda kullanılabilir.
- Her tarayıcı ve cihaz tarafından desteklenmemektedir.
- JavaScript kodları diğer yazılım dillerine göre büyüktür.
- Farklı cihazlarda çalıştırılması tutarsızlık yaratmaktadır.
Kaynakça
[1] https://en.wikipedia.org/wiki/Netscape_Navigator_2
[2] https://dev.to/codediodeio/the-weird-history-of-javascript-2bnb
[3] https://e-bergi.com/y/brendan-eich/
[4] https://www.haydarcan.com/javascriptin-tarihsel-gelisimi/
[5] https://home.cern/science/computing/birth-web/short-history-web
[6] https://en.wikipedia.org/wiki/Node.js
[7] https://www.w3schools.com/js/js_versions.asp
[8] https://medium.com/engineered-publicis-sapient/javascript-es6-es7-es10-where-are-we-
[9] https://medium.com/@selvaganesh93/javascript-whats-new-in-ecmascript-2019-es2019-
[10] https://www.freecodecamp.org/news/whats-the-difference-between-javascript-and-