Makale Özeti

Merhabalar bu makalemizde ajax teknolojisini ve çalışma prensiplerini inceleyeceğiz.

Makale

Başlamadan önce makalemizin içeriğini göz atalım. 

  • AJAX Nedir? 
  • AJAX’IN Kullandığı teknolojiler 
  • Klasik Çalışma Modeli 
  • AJAX Çalışma Modeli 
  • ASP.NET AJAX Nedir? 
  • ASP.NET AJAX Sunucu Kontrolleri 
  • ASP.NET AJAX Control Toolkit
Ajax Nedir?

AJAX (Asynchronous JavaSctiprt ve XML), XML ve javascript’in eş zamanlı olmadan birlikte çalışması ile ortaya çıkan bir teknolojidir. Yani Sunucu ile istemci arasında asenkron(eşzamanlı olmayan) haberleşme yapılmasını sağlayan bir yöntemdir. Bu sayede sayfanın tamamını yenilemeden sadece bizim belirlediğimiz alanları güncellenmesini sağlanır. AJAX Zannedilenin aksine yeni bir teknoloji değil sadece var olan birkaç teknolojinin bir araya gelmesi ile oluşturulmuş bir yöntemdir.

Ajax ilk olarak Şubat 2005 yılında yayınlandı ve yazılım geliştiriciler tarafından çok çabuk benimsen bir web teknolojisi haline geldi.

AJAX Hangi teknolojileri kullanır? 

HTML/XHTML : Sayfa içerikleri görümtülemek için kullanılır. 
CSS : Sayfada görüntülenecek olan verilere stiller uygulayarak biçimlendirmemimizi sağlar. 
DOM : Sayfa yüklendiğinde sayfaın dinamik olarak update olmasını sağlar.
XML : Sunucu ve istemci aradındaki veri değişimini sağlar. 
XSLT : XML’in CSS ile biçimlendirilip HTML/XHTML’e dönüştürülmesini sağlar. 
XMLHttpRequest: Server ile browser’ın iletişimi sağlayan nesnedir. Bu nesne sayfanın postback olmadan server ile konuşmasını sağlar. 
JavaScript : AJAX Teknolojisini ugulamak için kullanılan script dilidir.

Tüm bu teknolojiler ajax içerisinde kullanılır fakat bunlar arasında sadece üçünün kullanılması zorunludur: HTML/XHTML, DOM ve Javascript. Bilginin görüntülenmesi için HTML/XHTML’e ihtiyaç duyar, Sayfa refresh olmadan HTML/XHTML’de görüntülenenen bilgilerin değişmesi içinde DOM’a ihtiyaç duyar. JavaScript ise sayfadaki verileri güncellemek için DOM’u yapılandırmak ve client-server iletişimini başlatmak için kullanılır. Diğer teknolojiler ise AJAX’ın daha işlevsel kullanılması içindir fakat kullanılması da zorunlu değildir.

Klasik Çalışma Modeli



AJAX Çalışma Modeli


Niçin Ajax Kullanırız?

  • Kullanıcılara daha interaktif web sayfalarının hazırlanması 
  • Kullanıcıya daha çabuk yanıt verilmesi 
  • Farklı kaynaklar ile entegreli çalışması 
  • Kullanılmasının ve geliştirilmesinin çok kolay olması 
  • Tüm browserlar tarafından desteklenmesi 
  • ASP.NET 2.0 ile entegreli çalıştığı için AJAX’ı tercih ederiz.

AJAX Teknolojisi Kullanılan bazı siteler:

  • Kişisel Web Sitem :)
  • Gmail 
  • Google Map 
  • Google Suggest 
  • Live mail

ASP.NET AJAX

ASP.NET AJAX, Microsoft tarafından geliştirilmiş ücretsiz bir AJAX Frameworkdür. Javascript kodlarını arasında kaybolmadan kolayca AJAX uygullamalarımızı geliştirmemize sağlayan bir teknolojidir. İlk kod adı “ATLAS” olarak duyuruldu. Fakat daha sonra ASP.NET AJAX adı altında kendi orijinal adını geri aldı. Ocak 2007 yılında full sürümü olan ASP.NET AJAX 1.0 yayınlandı.

En sık sorulan sorulardan biride AJAX yalnızca ASP.NET 2.0 sürümleri ile kullanabilmekteyiz. ASP.NET 1.1 ve ASP.NET 1.0 Sürümlerini desteklemiyor.

İstemci ve sunucu tarafında bazı bileşenlerle desteklenmektedir. İstemci tarafında istemci frameworkleri ve servisleri bulunmaktadır. Sunucu tarafında da sunucu frameworki bulunmaktadır. Bu framework içerisinde sunucu kontrolleri, uygulama servisleri ve web servisleri bulunmaktadır.



AJAX Sunucu Kontrolleri

Script Manager
Script Manager, Ajax script kütüphanelerini ve script dosyalarını yönetir. Ajax kullanacağımız her sayfaya bu kontrolü eklemeliyiz.

Update Panel
Sayfadaki içeriklerin postback olmadan parçalar halinde güncellenmesini sağlayan ajax kontolüdür. Update panel içerisindeki verilerin güncellenmesi gerektiğinde sayfa da postback işlemi olmadan sadece update panel içerisindeki veri güncellenir.
Triggers:
Update panel dışarısında yer alan kontrellerin update panel içerisindeki verileri güncellemeleri gerektiğinde trigger kullanırız. 2 tip trigger vardır. AsyncPostBackTrigger ve PostBackTrigger.

AsyncPostBackTrigger: Hedef kontrolü ve tetiklenecek olan eventi belirtirerek ilgili updatepanel içerisindeki verinin postback olmadan(asenkron) güncellenmesini sağlar.

PostBackTrigger: Hedef kontolü belirterek Updatepanel içerisindeki verinin postback olarak(senkron) güncellenmesini sağlar.

Update Progress
UpdatePanel güncellendiğinde yada içerik değiştiğinde browser da kullancıyı bilgilendirme amaçlı kullanacağımız kontroldür.

AJAX Control Toolkit

AJAX Kontrol toolkit, İstemci taraflı çalışan ASP.NET AJAX kontolleri ve extenderleri oluşturmamızı sağlayan bir yapıdır. Kolayca Kişisel Kontroller ve extenderler oluşturabilmemiz için güçlü bir SDK’si vardır. AJAX kontrol Toolkit’i http://ajax.asp.net adresinden indirebilirsiniz. Microsoft zamanla 70-80 arasında standart olarak kullanılabilecek kontrol geliştirmeyi planlıyor. Yazgelistir.com üzerinde ajax toolkit ile yazmış olduğum makaleleri bulabilirsiniz.

Bu makalenin de sonuna geldik. Başka bir makale de görüşmek üzere :)

SEM GÖKSU
MCP(Microsoft Certifed Professional)
MCAD(Microsoft Certifed Application Developer)
MCTS(Microsoft Certifed Technolgy Specialist)
info@semgoksu.com  
www.semgoksu.com