Tarayıcınız Javascript Desteklemiyor! Ajax Nedir? | Zap Group Web Tasarım

Ajax Nedir?

Ajax Nedir?

Ajax Nedir?

AJAX,  Asynchronous JavaScript ve XML ‘in kısaltması niteliğindedir. Türkçesi Eşzamansız JavaScript ve XML anlamına gelir. Bir dil veya kütüphane değildir. Basitçe, sayfayı yenilemeye gerek kalmadan, değişiklikleri güncelleyen ve interaktif web uygulamalarını daha çabuk  oluşturmak için kullanılan ücretsiz bir framework’tür. Neredeyse tüm programlama dilleri ile uyumlu çalışır.

Ajax, daha önceden var olan JavaScript ve XML dillerini, web tarayıcısında bulunan XmlHttpRequest nesnesi ile birlikte kullanır.

Ajax ile XMLHttpRequest  tekniği kullanarak birden fazla bağımsız işlem yapabiliriz. Uzmanlar, AJAX' ın HTML ve XML' den sonra gelen en yenilikçi internet yazılımı olduğunu düşünmektedir. Belki de Web 2.0.' ı sonlandırıp, 3. evrenin kapısını açan da AJAX’tır.

Ajax’ ın amacı arka planda sunucu ile az miktarda veri değişimi ile sayfaları daha hızlı güncelleyebilen web sayfaları oluşturmaktır. Böylece kullanıcıyı zaman zaman web sayfasını güncelleme zorunluluğundan kurtarmış oluyor. Bu da web sayfasının hızını ve etkileşimini arttırıyor.

Ajax neredeyse her web projesinde kullanılabilir. Fakat kaynak kodlarında gözükmediği için bazı tarayıcılar bu içeriği okuyamıyor. Desteklemeyen tarayıcılar için ayrı bir versiyon oluşturulması gerekiyor.

Bunun yanında sayfada güncellenmesi istenen ufak bir kısmın kodları kullanıcı bilgisayarından yorumlanırken, bilgisayar yavaşsa sorunlar yaşanabiliyor.

Ajax elbette ki bizi fazla kod yazmaktan kurtarıyor ama bunun yanında bazen de daha çok kod yazmayı gerektiriyor. Yapılan işte neyin gerekli neyin gereksiz olduğuna dikkat edilmeli.

AJAX ile işlem yapmayı sağlayan istemci taraflı çatılardan bazıları JQuery, Backbone.js ve AngularJS ‘dir.


AJAX ile işlem yapmayı sağlayan sunucu taraflı teknolojilerinden bazıları da DWR Direct Web Remoting ve JSF Java Server Faces’ tir.

Ajax en çok form doldururken; il ve ile göre olan ilçe seçimlerinde, ürün aratırken veya listelerken, arama yapıldığında otomatik tamamlama ve sonuç göstermede kullanılır. Bunların yanında yorum gönderme ve beğenmelerde de vardır.

 

AVANTAJLARI NELERDİR?

İlk paragrafta da belirtildiği gibi bize sunduğu en önemli avantaj, güncellemelerde sayfanın değil istenilen kısımların sunucuya gidip gelmesidir. Eğer sayfada güncellemeyi kontrol etmeden pageLoad() kısmına bir kod yazmışsak bunlar da güncellenecektir. Bu da hem fazladan vakit kaybı hem de  kullanıcının yaptığı işlemlerin kaybına sebep olabilecek bir durum.

Ajax kullanırsak hem zamandan tasarruf etmiş hem de ağ trafiğini azaltmış olacağız. Ayrıca ekrandaki güncelleme daha hızlı olduğu için kullanıcılar sayfadan daha memnun kalacaktır.

Bu işlemleri yapmak için JavaScript de kullanabiliriz neden Ajax kullanıyoruz ki? Elbette işlemler sırasında başka bir sayfaya veri göndermiyorsak JS kullanmak daha hızlı bir tercihtir. Ancak veri tabanı sorgusu gibi bir işlem yapılacaksa, Ajax daha iyi bir tercih oluyor. Bu durumda da Js’ i her alanda kullanamamış oluyoruz. Ayrıca Ajax kendi içine “Browser Compatibility” denen bir kütüphaneyi ekleyip farklı tarayıcılarda çalışamama sorunundan kurtulmayı hedefliyor.

Ajax’ ın bir avantajı da birçok dil ile entegre olup sanki yeni bir araç ekliyormuşuz  gibi kolay ve kısa sürede öğrenilebiliyor olmasıdır. Yani yeni bir dil öğrenmeyi gerektirmeden html, php vb diller ile birlikte çalışabiliyor.

 

DEZAVANTAJLARI NELERDİR?

Elbette Ajax’ta da bazı buglar ve sorunlar var. Tamamen mükemmel değil.

Herkesin en çok yakındığı sorun; ileri-geri butonu sorunu. Tarayıcı dinamik sayfaları hafızasında tutmuyor ,sayfalar dinamik olarak oluşturulduğu için, geri tuşuna basıldığında sayfanın yapısına göre sorunlar çıkabiliyor.

Bir diğer dezavantaj; bazı bilgisayarlarda ActiveX’ in otomatik engellenmesinden kaynaklanıyor. Ajax’ ın kullandığı  XMLHTTPREQUEST bir ActiveX nesnesidir ve ActiveX engellenince Ajax çalışmayabiliyor.

Ajax’ ın JS’ den kaynaklanan dezavantajları da var. JS, kullanıcı bilgisayarında yorumlanan bir dil olduğu için bilgisayarı bir parça yavaşlatır. Bu durum yavaş bilgisayarları daha da yavaşlatmak demektir.

Başka bir sorun da arama motorlarında indexlenememesidir. Ajax içerisinde yüklenen veriler sayfanın kaynak kodlarında görünmez ve arama motorları da bunu göremeyeceği için indexleyemez. Ancak bu sorun tag gibi yöntemler  kullanılarak ortadan kalkabilen bir sorun. Hatta bu durum avantaja da dönüşebilir.  Kimse kişiye özel bilgilerin olduğu sayfaların, arama motorlarında çıkmasını istemez.