JavaScript Nedir, JS Nerede Kullanılır, Ne İşe Yarar?

14 Haziran 2024

14 dk Okuma

JavaScript nedir? Javascript web sayfalarına dinamiklik kazandırmak amacıyla geliştirilen bir programlama dilidir. 1995 yılında Brendan Eich tarafından sadece 10 günde geliştirilmiştir. İlk adı Mocha olan bu dil sonrasında Mona adını ve en sonunda bir pazarlama stratejisi olarak JavaScript adını aldı.

O zamanlarda yaygın ve popüler bir dil olan Java’ya benzerliğini vurgularken potansiyel kullanıcıları çekmek için böyle bir hamle yapıldı. Ancak sanılanın aksine JavaScript ve Java arasında bir benzerlik bulunmaz. Java ile JavaScript farkına en büyük örnek Java’nın derlenen JavaScript’in yorumlanan bir dil olmasıdır. Her şeye rağmen bu strateji işe yaramış olmalı ki JS günümüzde web sayfalarının %97,6’sı tarafından kullanılır. Peki az önceki cümlede geçen JS ne demek? JavaScriptin yaygın kullanılan kısaltmasıdır.

JavaScriptin bu kadar popüler olmasının sebeplerinden biri de diğer programla dillerinin aksine çalıştırılmadan önce derlenmeye ihtiyaç duymamasıdır. Bu özellik yapılan değişikliklerin anında test edilebilmesine olanak tanır. Ayrıca insan diline yakın yüksek seviyeli bir dil olmasından dolayı JavaScript kodlarının okunması ve anlaşılması nispeten kolaydır. Bu sebeple geliştiriciler tarafından sıklıkla tercih edilir.

JavaScript Neden Kullanılır?

En temel haliyle JS nedir? Sorusunun cevabı interaktif deneyimler sunmak için kullanılan bir programlama dili olduğu yönündedir. Form göndermek, arama yapmak ve ürün detayına gitmek gibi kullanıcının etkileşimine göre şekillenen içeriklerin güncel tutulmasını sağlar. Menü geçişleri, kaydırma efektleri, açılır pencereler ve animasyonlar gibi kullanıcı arayüzünü zenginleştiren öğeler de ayrıca JS ile kolayca inşa edilebilir.

İnteraktifliği sağlayan Javascript özellikleri arasında olay işleme de vardır. Kullanıcıların fare tıklamaları, kaydırma hareketleri, tuş vuruşları ve buna benzer davranışlarına tepki verebilecek şekilde programlama yapmaya imkan tanır. Bunu yaparken Document Object Model (DOM) yapısına doğrudan erişerek değişiklik yapar.

DOM Manipülasyonu kullanıcı etkileşimini geliştirir. JS kullanarak DOM Manipülasyonu yapmak web sitenizin trafiğini arttırabilir. Arama motorları tarafından daha kolay taranmayı mümkün kılar. Bu özelliğe ek olarak Single Page Application(SPA) ile web sayfasının yalnızca bir indexte var olmasına imkan tanıyarak performansı iyileştirir.

Basit söz dizimi C ve Python gibi dillere hakim olan geliştiriciler için öğrenmeyi kolaylaştırır. İnternet üzerinde sayısız öğrenme materyali olması da JavaScript öğrenmek isteyenler için işleri hızlandırır. Sadece dokümantasyonlar değil aynı zamanda topluluklar da kullanım ve öğrenim süreci iyileştirir.

JavaScript Nasıl Çalışır?

JavaScript öğrenmeye çalışanlar için başlangıç aşamasında nasıl çalıştığını anlamak zor olabilir ama temel kavramlar üzerinden giderek süreci kavramak mümkündür. Şimdi JavaScript nedir nasıl etkinleştirilir gibi sorulara en baştan cevap arayalım.

Bir web sitesinde HTML iskelet, CSS deri ve JS kaslardır. Bu kasların çalışabilmesi için JS kodunu yorumlayıp yürütecek arama motorlarına ihtiyaç vardır. Tarayıcılara göre bu motorlar değişiklik gösterir.

Google Chrome ve Opera V8’i, Firefox SpiderMonkey’i, Safari Nitro’yu ve Microsoft Edge Chakra’yı kullanır. Bu motorlar JS’i yorumlamak için farklı teknikler kullanmalarına rağmen ortak bir amaca hizmet ederler. Ortak amaç web sayfalarında dinamik deneyimler ve interaktif deneyimler sunmaktır.

Tarayıcı motorları karşınıza çıkan sitelerde ayrıştırma, derleme ve yürütme işlemini gerçekleştirir. Ayrıştırma işleminde JavaScript kodları sözdizimi ve noktalama hataları dikkate alınarak satır satır okunur. Derleme işleminde JS yorumlanmadan önce bytecode gibi bir formüle dönüştürülür. Bu adım her zaman için gerekli değildir ama optimizasyonu arttırır. Yürütme işleminde bytecode yorumlanır ve JS kodunun komutlarına göre eylemler gerçekleştirilir.

Javascript Kullanım Alanları Nelerdir?

JavaScript kullanım alanları son derece çeşitlidir. Ortaya çıktığı dönemde dahili kullanımlar için tasarlanmıştı. Daha sonrasında standartlaşma, tarayıcı desteği ve büyük geliştirici topluluğu gibi etkenlerle ilerlemesi sağlandı. Kaydedilen ilerlemeyle günümüzde JavaScript ile neler yapılabilir? Sorusunun birçok cevabı vardır.

JavaScript nerede kullanılır derseniz web geliştirme, mobil geliştirme, oyun geliştirme, sunucu tarafı geliştirme, sistem yönetimi , yapay zeka, nesnelerin interneti verilebilecek ilk örneklerdir. Yeni teknolojiler ile beraber kullanım alanları genişlemeye devam eder. Aşağıda JS kullanımında öne çıkan alanları inceleyebilirsiniz.

Web Geliştirme

JavaScript ne için kullanılır? Sorusu sorulduğunda akla ilk gelen cevaplardan biri web geliştirmedir. Hem Frontend hem de Backend’de etkin bir şekilde kullanılır.

Frontend’de HTML ve CSS ile oluşturulan web sayfalarına dinamizm kazandırır. API’lara erişim sağlarken sayfada gösterilecek verilere ulaşır. AJAX ile asenkron bir şekilde sayfayı yenilemeye gerek kalmadan veri alışverişini gerçekleştirir. Frontend developer eğitimi ile bunun gibi işlemleri ve daha fazlasını aktif bir şekilde öğrenmek mümkündür.

Backend’de Node.js gibi bir programdan yararlanarak sadece istemci tarafında değil aynı zamanda sunucu tarafında da çalışabilir. Sunucu tarafında JS ile API oluşturmak mümkündür. Oluşturduğunuz API’ya giden HTTP isteklerini yönetirken de yine JS’den yararlanabilirsiniz. Backend’e nereden başlayacağınızı bilmiyorsanız ve komplike öğrenim sürecini kolaylaştırmak için Backend yazılım eğitiminden yararlanabilirsiniz.

Mobil Geliştirme

Mobil geliştirmede JavaScript kullanımı React Native, Flutter ve Ionic gibi frameworkler üzerinden yapılır. Her teknolojinin kendi içinde artıları bulunur. React Native, Facebook tarafından geliştirilen bir çerçevedir. React kütüphanesini temel alır. Bu özelliği tekrar kullanılabilir kod parçaları oluşturabilmesini sağlar.

Flutter, Google tarafından geliştirilmiştir. Dart ve JS kullanarak web uygulamaları geliştirmeyi mümkün kılar. Ionic de Angular, React ya da Vue.js gibi frameworkler ile birlikte kullanılır. Bu çerçevelere ek olarak Apache Cordova adında açık kaynak platformu vardır. HTML, CSS ve JavaScript kullanır. Dezavantajı native uygulamalar kadar performanslı olmamasıdır. Güncel olarak tercih edilmez.

JavaScript Framework’ü Nedir?

JavaScript’in işlevselliğini arttırmak ve geliştiricilerin işlerini kolaylaştırmak amacı ile yaratılan JavaScript çerçevelerine framework denir. Framework kullanmak kodun okunabilirliğini arttırır. Modüler işleyiş tarzlarıyla kod güncellemelerini kolay hale getirirler. Aktif geliştirici toplulukları da JS çerçevesi kullanımı sırasında ortaya çıkan problemlerin hızlıca çözülmesine olanak tanır.

En Popüler JavaScript Framework’leri Nelerdir?

Web geliştirme ortamı her geçen gün yeni teknolojiler ışığında farklılaşıyor. Özgün ve ilgi çekici arayüzler oluşturmak amacıyla geliştiricilerin sıklıkla tercih ettiği frameworkler vardır. Bu bakımdan öne çıkan JS çerçeveleri arasında React, Angular, Vue.js ve Ember.js yer alır. Şimdi bu frameworkleri daha yakından inceleyelim.

React

React kullanıcı arayüzleri oluşturabileceğiniz bir JavaScript çerçevesidir. Amacı tekrar kullanılabilen küçük bileşenler oluşturarak yapıyı organize bir şekilde inşa etmektir. Avantajlarından biri sanal DOM’u kullanıyor olmasıdır. Sanal DOM sayesinde her seferinde gerçek DOM’u güncellemeye gerek kalmaz. Sanal DOM’da daha az işlem yaparak istediğiniz sonuçlara ulaşmanız mümkündür ve az işlem performansı iyi yönde etkiler.

React ile tek sayfalık uygulamalar, mobil uygulamalar, masaüstü uygulamaları ve statik web siteleri oluşturabiliriz. Eğer öğrenme eğrisinin başındaysanız ve JavaScript ile neler yapılabilir? Sorusuna cevap arıyorsanız React sizin için mükemmel bir başlangıç noktası olabilir. Kaynak çeşitliliği öğrenme sürecinde işlerinizi kolaylaştıracaktır.

Vue.js

Vue.js tek sayfalık uygulamalar yani SPA’lar oluşturmak için kullanılan bir JS kütüphanesidir. 2013 yılında geliştirilmeye başlanmıştır. Nispeten kolay yapısı onu yeni başlayanlar için ideal bir kütüphaneye dönüştürür. Küçük boyutuyla daha az kaynak kullanır. React gibi Vue.js de sanal DOM’dan yararlanır ve bu performansını iyi yönde etkiler.

Vue.js’ in yenilikçi bir ekosistemi vardır. Verimliliği arttıran eklenti, kütüphane ve araçlarla desteklenir. Örneklendirmek gerekirse yönlendirme için Vue Router, durum yönetimi için Vuex, komut satırı arayüzü için Vue CLI ve geiştirici araçları olarak Vue DevTools’u kullanır. Küçük ve orta ölçekli uygulamalar için idealdir.

Angular

Angular, Google tarafından geliştirilen TypeScript ile yazılan bir JS çerçevesidir. Angular ile tek sayfalık uygulamalar ve daha karmaşık web uygulamaları geliştirilir. Modülerdir ve ihtiyaca göre işlevsel şekilde parçalara ayrılabilir. Öne çıkan avantajları arasında çift yönlü veri bağlama vardır. Model ve görünüm arasındaki veriler otomatik bir şekilde senkronize edilir. Çift yönlü veri bağlama aynı zamanda kodu daha az hata eğilimli hale getirir.

React ile karşılaştırıldığında Angular’ın daha fazla özellik ve üçüncü taraf kütüphanesine sahip olduğu gözlemlenir. React’a kıyasla daha karmaşık bir yapısı vardır. Framework seçerken proje gereklilikleri baz alınarak tercih yapılması tavsiye edilir.

Ember.js

Ember.js yeniden boyutlandırılabilir tek sayfa uygulamaları oluşturmak için kullanılır. Ember.js’in geliştiricilerin üretkenliklerine katkıda bulunan özellikleri vardır. Bu özellikler arasında hazır dosya ve klasör yapıları vardır. Hazır yapılar projeler arasında tutarlılık sağlarken anlaşılabilirliği arttırır. Ember CLI yani komut satırı arayüzü yeni bileşenler eklenirken kod şablonları oluşturarak geliştiricilerin projelerde daha efektif ve seri bir şekilde çalışmasına yardımcı olur.

Ember.js eklenti tasarımı sayesinde çok az konfigürasyonla daha fazla işlevsellik elde edilebilir. Bunun gibi avantajların yanında yeni başlayan geliştiriciler için karmaşık yapısı zorlayıcı olabilir. Sunduğu hazır dosya yapıları gibi katı kurallar esnek bir geliştirme ortamı için sorun teşkil edebilir.

En Sık Kullanılan JavaScript Kütüphaneleri

JavaScript kütüphaneleri zamandan tasarruf etmek için idealdir. Standartlaşmış görevleri pratik bir şekilde halletmenize olanak sağlarlar. Fonksiyonalite kazandırmaya çalışırken ekleyeceğiniz fazladan JavaScript kodlarından sizi kurtarırlar. Daha verimli uygulamalar oluşturmanıza destek olurlar. Aşağıda popüler JS kütüphaneleri ve yaygın kullanım alanları verilmiştir.

Axios

Axios, Node.js ve web tarayıcılarında kullanılan bir Javascript kütüphanesidir. HTTP isteklerinden sorumludur. Kodunuzdaki hataları otomatik bir şekilde ele alarak hata ayıklama sürecini hızlandırır. Aldığı yanıtları JSON formatına dönüştürür ve bu işlemi özelleştirmenize izin verir. Promise tabanlı olmasından dolayı istekleri asenkron bir şekilde işlemeyi mümkün kılar. Çok az bağımlılığa sahiptir ve bu yüzden boyutu diğer kütüphanelere kıyasla küçüktür. Daha az bellek kullanması mobil cihazlar için yararlı bir özelliktir.

Lodash

İlk sürümü 2012 yılında çıkan Lodash en sık kullanılan JS kütüphanelerinden biridir. Açık kaynak bir kütüphanedir. Lodash’in sunduğu araçlarla tekrar eden işlemleri azaltır. Yüksek performanslı web uygulamaları inşa ederken kullanılabilir.

Geniş bir fonksiyon yelpazesi olan Lodash, 4.000’den fazla fonksiyonu içinde barındırır. Bu fonksiyonlar çeşitli veri yapıları üzerinde çalışırken hataları engellemeye yardımcı olan testleri de içerir. Diziler için filtreleme, sıralama, gruplandırma, dönüştürme ve araştırma işlemlerini bir kaç farklı yöntemle gerçekleştirebilir. Bu çeşitlilik sadece diziler tarafında değil aynı zamanda nesneler, metinler ve sayılar tarafında da mevcuttur.

jQuery

jQuery JavaScript’i daha hızlı kullanmanıza yardımcı olan bir kütüphanedir. jQuery kullanarak kodunuzu daha organize bir şekilde tutabilirsiniz. AJAX istekleri, DOM etkileşimi ve buna benzer birçok işlemi geliştiriciler için kolaylaştırır. AJAX sayfayı yenilemeden veri alışverişi yapmayı sağlar, jQuery bu işlemi daha okunaklı ve basit bir hale getirir.

Büyük boyutlu bir kütüphanedir ve gereksiz yere kullanılması performansı etkiler. jQuery’nin yerine geçebilecek alternatifler Vanilla JavaScript, React ve Angular’dır. Bu alternatifler jQuery’nin birçok özelliğine zaten sahiptirler.

D3.js

D3.js veri odaklı belgeler anlamına gelir. Etkileşimli veri görselleştirmeleri oluşturmak için kullanılır. HTML ve SVG öğelerini ilişkilendirerek veriye göre şekillenen dinamik görselleştirmeler oluşturmayı mümkün kılar. D3.js’in sağladığı fonksiyonlar verilerin filtrelenme, sıralanma, gruplanma ve birleştirilme gibi olayları üzerinde kontrol sağlar. Sağladığı kontrolle manipüle edebilmeye imkan tanır.

Web sayfanızda etkileyici ve fonksiyonel görseller oluşturmak için D3.js’i kullanabilirsiniz. Geliştiriciler tarafından grafik, harita, ağ ve zaman çizelgeleri oluşturmak için tercih edilir. Alternatifleri Chart.js, Google Charts ve Highcharts’tır.

Javascript Nasıl Kullanılır?

Projeye göre JS ne işe yarar sorusunda verilecek cevap kullanım amacı ve gerekliliklerine göre değişiklik gösterebilir. İki adet temel kullanım örneği vardır. Birinci yöntem de HTML dosyasına eklenen etiketleri arasına Js kod parçalarını koymak çalışması için yeterlidir. Bu şekilde kullanırken dikkat edilmesi gereken şey kodun fazla uzun olmamasıdır. Dahil edilen kodlar uzadıkça hata ayıklama ve kod okumak zorlaşır. HTML’e gömülü JS kodları sayfanın performansını kötü yönde etkiler.

Dış dosya olarak kullanmak ikinci yöntemdir. Daha fazla tercih edilir ve karmaşıklığı azaltır. Kullanmak için öncelikle .js uzantılı bir dosya eklemelisiniz. Sonrasında HTML dosyanızın body kısmına etiketini ekleyerek src’de index.js yerine kendi JS dosyanızı yazmanız yeterlidir. Oluşturduğunuz .js uzantılı dosyaya JS kodlarınızı girmeye başlayabilirsiniz.

JS yazarken kodunuzun okunabilir ve anlaşılabilir olması son derece önemlidir. Temiz kodun temellerini oluşturan şeyler isimlendirme ve girintilerdir. Bunun gibi konuları daha komplikelerini kavramak için yazılım eğitiminden yararlanmak iyi bir seçenektir.

Peki JavaScript nerelerde kullanılır? Web sayfaları, form yönetimi, Ajax, animasyon ve görsel efektler, oyun geliştirme ve mobil geliştirmede kullanılır. Bunlara ek olarak kullanıcıdan bilgi almanız gereken durumlarda prompt kullanabilirsiniz. Öyleyse JavaScript prompt nedir? Prompt JS’in içinde bulunan bir metottur. Kullanıcıdan bilgi almak istediğinizde de prompt metodundan yararlanılabilir. Bu metot belirli bir soruyu ya da metni gösterirken kullanıcının girdiği metni de döndürür.

JavaScript Kullanmanın Avantajları Nelerdir?

Çok yönlü bir programlama dili olan JavaScript’in birçok avantajı vardır. Mobil uygulama geliştirme, sunucu tarafı programlama, oyun geliştirme, masaüstü uygulama geliştirme ve sistem yönetimi alanlarında kullanılabilir. Sistem yönetimi alanında otomasyon, yapılandırma yönetimi, izleme, Log yönetimi taraflarında JS’den yararlanılır. Yani JavaScript ne demek dendiğinde birçok projeyi işler kılabilen bir araç olduğu söylenebilir .

Yorumlanan bir dil olması sayesinde derlenmeye ihtiyaç duymaz ve bu özelliği derlenen dillere kıyasla zaman ve kaynak tasarrufu sağlar. Başka dillerde daha fazla kod satırı ile yaptırabileceğiniz işlemleri pratik ve kısa bir şekilde JS ile yazabilirsiniz.

DOM’a doğrudan ulaşarak projenizde dinamiklik kazandırmak istediğiniz elementleri seçebilirsiniz. Bu oldukça kolay bir işlemdir ve örnek vermek gerekirse tıklama, gezinme ve form gönderme gibi kullanıcı etkileşimli olaylar buna dahildir.

Peki JavaScript ne kadar sürede öğrenilir? Bu süreç kişiden kişiye göre değişiklik gösterir. Genel anlamda kodlamaya yeni başlayan biri için temelini anlamak 2-3 ay alabilir. Öğrenme sürecinin içinde kullanılan kaynaklar kişiyi hızlandırabilir. Konuları optimize edilmiş bir bootcamp ile birkaç hafta içinde bile fonksiyonaliteyi kavramak mümkündür aslında. Fakat unutmamanız gereken şey bireylerin arka planlarına ve gün içinde ne kadar zaman ayırdıklarına bağlı olarak bu sürenin değişiklik göstereceğidir.

Temellere hakim olduktan sonra frameworkler ve kütüphaneleri hakkında bilgi edinmek yararınıza olacaktır. Framework ve kütüphaneler hakkında bilgi edinmek hangi projelerde neye ihtiyacınız olduğunu anlamak adına öngörü kazandırır. Başta bu çeşitlilik kafa karıştırıcı olabilir ama JS’in sahip olduğu geniş geliştirici topluluğu sayesinde kendi yol haritanızı oluşturabilirsiniz.

Kaynakça JavaScript Ekibi. (2024, 28 Şubat). JavaScript. Mozilla Developer Network. https://developer.mozilla.org/en-US/docs/Web/JavaScript Vikipedi Katkıda Bulunanlar. (2024, 28 Şubat). JavaScript. Vikipedi, Özgür Ansiklopedi. https://tr.wikipedia.org/wiki/JavaScript Amazon Web Services (AWS). (2024, 28 Şubat). JavaScript Nedir? https://aws.amazon.com/tr/what-is/javascript/

Turhost Blog. (2024). JavaScript Nedir? Ne İçin Kullanılır? https://www.turhost.com/blog/javascript-nedir-ne-icin-kullanilir/