23 Ekim 2013

JavaScript Nedir? Nerelerde Kullanılır

JavaScript

JavaScript bir programlama dilidir ve ilk çıkış yılı 1995'tir. Sadece istemci(client-side) tarafında yorumlanabilen betik bir dildir. Peki betik dil nedir bunu biraz açacak olursak; uygulamaları doğrudan denetlemek için kullanılan dillerdir. Betik diller doğrudan kaynak kodundan çalıştırılır. Bu yüzden JavaScript kodlarını PHP veya ASP gibi saklayamazsınız, kodlar açıktır ve .js uzantısındaki dosyaları açınca direk görebilirsiniz.

JavaScript dilini günümüz web uygulamalarının her yerinde kullanmamız mümkün ve gereksinim haline de gelmiştir. Birçok Web sitesi ufak uygulama işlemleri, animasyon tarzı görselliği sağlayıcı unsurları, basit kayıt alma ve login işlemlerinden tutun birçoğu JavaScript ile halledilmeye çalışılıyor.

ASP.NET, ASP, PHP, JSP ve HTML farketmiyor tüm web dilleri için kullanılıyor. Buradan anlayacağımız JavaScript aslında bir web sitesinin temel dili değildir, yardımcı dil görevinin görür.

Birçok kişi JavaScript'in derleyicisi var mı? merak etmektedir. JavaScript yüksek seviyeli bir değildir ve IDE'si yoktur. Derleyici görevini Tarayıcının JavaScript motoru görmektedir. Kısaca JavaScript'in derleyicileri Browser diyebiliriz.

JavaScript hakkında en çok karıştırılan kavram ise Java olduğu sanılmaktadır. Oysaki Java yüksek seviyeli bir dildir ve IDE'leri vardır. JavaScript ile bir alakası yoktur.

JavaScript yani JS tercih edilme sebebi HTML in yapamadığı dinamik sayfaları oluşturmaya yardımcı olur. Bu arada HTML bir programlama dili değildir, bunu da ek bilgi olarak verelim. JavaScript istemci tabanlı betik dil olduğu için ASP,PHP gibi web sunucularının kaynaklarını tüketmeden direk Browser üzerinden yorumlandığı için Server'ın da yükünü azaltmış olur. Server'dan kazanılan bu kazanç zamanda da kazandırıyor.

Eksikleri
JavaScript'in eksiklerinden bahsedecek olursak; JavaScript geliştirirken Debug şansımız olmadığı için sadece hataları Browser üzerinden görebiliyoruz. Eğer tarayıcınızda Script hatalarını göster kısmını aktif ederseniz bu şekilde çalışabilirsiniz. Bir başka eksiği ise Tarayıcıya göre değişiklik göstermektedir. Örnek olarak yazdığınız bir JavaScript kodu Chrome'da düzgün çalışırken Internet Explorer'da çalışmayabilir.

Güvenlik Boyutu
Son olarak güvenlik açısından bakarsak olaya, JavaScript dilinin oluşturduğu güvenlik açığı XSS(Cross Site Scripting) dediğimiz bir açık. Bu açık sadece hedef web sitesindeki bir kişiye mail atarak Phishing yöntemi ile kişinin Cookie dediğimiz bilgisini alarak mail adresine giriş yapabilir.

Önemli kuruluşlar için bunu ele alacak olursak. Örnek olarak bir banka sistemi ASP,ASP.NET veya PHP ile yazıldığını düşünelim. Eğer siz tüm uygulamaları bu web dilleri ile yazarsanız o zaman güvenlik açığı verme şansınız daha çoktur. Bu dillerde vereceğiniz ufak bir güvenlik açığı, Hacker'ın veri tabanına veya dosya sistemi, FTP içerisine kadar ulaşmaya kadar gider. Fakat mimari dil dışında ek geliştirmeleri JavaScript ile yapacak olursanız güvenlik riskini daha aşağılara indiriyorsunuz.

Kaynaklar
http://en.wikipedia.org/wiki/JavaScript
http://www.w3schools.com/js
http://en.wikipedia.org/wiki/Cross-site_scripting
http://www.javascriptindir.com
http://www.javascriptsource.com
http://www.java.com/tr/download/faq/java_javascript.xml
http://tr.wikipedia.org/wiki/JS
http://jquery.com
http://tr.wikipedia.org/wiki/JQuery