7/12/2005

AJAX Nedir? Ne Değildir?

Ajax, web aplikasyonları için yeni bir yaklaşımdır ve Asynchronous JavaScript and XML'in kısaltmasıdır. Herhangi bir çamaşır suyuyla uzaktan yakından alakası yoktur, olmayacaktir.

Doğru kullanıldığı zaman ASP.Net ve diğer server tabanlı teknolojilerden çok daha hızlı kullanıcının isteklerine cevap verebilen daha interaktif çözümler bu yeni yaklaşım sayesinde üretilebilmektedir.

AJAX kullanılan Asp.Net tarzı web aplikasyonlarında server'a form gönderme ve cevap bekleme kısmı tamamen ortadan kaldırılmış. Asp.Net tarzı server tabanlı web aplikasyonlarında server kullanıcı tarafından gönderilen isteklere her kullanıcı bir istek gönderdiğinde cevap vermek zorunda olduğundan yazılımın cevap verme hızı web serverin hızıyla doğru orantılıydı. Web serverın hızlı cevap veremediği zamanlarda da kullanıcının web aplikasyonundan aldığı verim büyük oranlarda düşebiliyordu.

AJAX kullanımında browserla web server arasındaki veri alışverişi dramatik oranda azaltılıyor ve aynı zamanda da web server'in işlem gücü bu tür işlemler için kullanılmamış oluyor.

Düşününce benim de aklıma nasıl yapıldığını düşündüğüm bir çok program özelliği geldi. Örneğin Google Maps'teki zoom özelliği(sayfa reload gerektirmiyor), Google Suggest'te siz keyboardunuzla birşeyler girdikçe sayfayı refresh etmeden yeni önerilerin size sunulması ve bunun gibi bir çok örnek...

Ajax aşsağıdaki teknolojilerin bir araya getirilmesiyle oluşmuş;
  • Javascript
  • XHTML ve CSS'in ortak kullanımı
  • Document Object Model kullanarak dinamik sayfa gösterimi ve interaktif kullanıcı arabirimi.
  • XML ve XSLT kullanılarak veri alim/gönderimi ve manipulasyonu
  • XMLHttpRequest kullanılarak yapılan asenkron veri alımı

AJAX'la yazılmış web aplikasyon örnekleri nelerdir?
A9(Amazon), Flickr, Gmail, Orkut, Google Maps , Google Groups, Google Suggest... (Google, Ajax mimarisinin en büyük destekçilerinden)

Güzel bişeymiş bu AJAX, nerden indiririz bunu?
AJAX indirilebilecek bir paket, elle tutulur veya gözle görülür birşey değildir. AJAX, yeni bir yazılım mimarisi yaklaşımıdır.

AJAX hakkında daha fazla bilgi için tıklayın.