Web Uygulamalarında Yeni Bir Yaklaşım AJAX

Slides:



Advertisements
Benzer bir sunumlar
Web uygulamalarında yeni bir yaklaşım AJAX
Advertisements

SGB.NET’İN TEKNİK ALTYAPISI
İnternet Tarayıcı Programlar
Yazılım Geliştirme ve Java
İNTERNET.
MIT504 İnternet ve Web Programlama: Javascript programlama devam Yrd. Doç. Dr. Yuriy Mishchenko.
Hazırlayan: Cihan UĞUR
Silverlight Daron Yöndem INETA Türkiye Başkanı
Asp - Asp.Net Temel Özellikleri ve Örnek Uygulamalar
Websitelerinde Standartlar Açısından Dikkat Edilmesi Gereken Noktalar 1 Websitelerinde Standartlar Açısından Dikkat Edilmesi Gereken Noktalar Eser SAHiLLiOĞLU.tr.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
WEB SERVİCE İDRİS YÜRÜK MAHMUT KAYA.
.NET FRAMEWORK.
Amaçlar  Verinin üretildiği yerden ve üretildiği anda elektronik ortamdan alınması  İnsan emeği ve hataların en aza indirilmesi  Birbirine bağlı süreçlerde.
HAZIRLAYAN HÜLYA ZOBU TÜRKÇE ÖĞRETMENLİĞİ İ.Ö
 Ofis dışından erişim  Kurulum gerekmez  Internet Explorer, Mozilla FireFox, Google Chrome, Safari üzerinden çalışma  Sade ve basit arayüz Web Avantajları.
WEB Tasarımı & .NET Bolum 1
MIT505 İnternet ve Web Programlama: Web Şablonları ve Web düzenleme
İnternet Programcılığı
INTERNET TABANLI HASTA KAYDI PAYLAŞIMI VE TELEKONSÜLTASYON PLATFORMU
HR-WEB TANITIM SUNUMU’2014
ÖMÜR BİLGİLİ
WEB 2.0 ARAÇLARI SABRİYE ESER TÜRKÇE ÖĞRETMENLİĞİ.
BTEP 203 – İnternet ProgramcIlIğI - I
Çevre ve Orman Bakanlığı Bilgi İşlem Dairesi Başkanlığı
İNTERNET TARAYICILARINDA YENİ NESİL GRAFİK TEKNOLOJİLERİ
BTP 108 BİLGİSAYAR AĞ SİSTEMLERİ AĞ KAVRAMI Birden çok bilgisayarın birbirine bağlı olarak kullanılmasıyla oluşturulan çalışma biçimine bilgisayar ağı.
ÖĞRENME NESNESİ Sibel SOMYÜREK.  Çeşitli öğrenme ortamlarında tekrar kullanılabilen küçük parçalara bölünmüş olan e-içeriklere öğrenme nesnesi denir.
XML TEKNOLOJİLERİ BTP 206. Ders İçin Gerekli Olan Ders Kitabı –XML, Zafer Demirkol, Pusula Yayınları Yardımcı Ders Kitabı –XML How To Program, Deitel.
Temel HTML Eğitimi Erman Yükseltürk.
IT 504 İnternet ve Web Programlama Tanıtım Yrd. Doç. Yuriy Mishchenko.
Bilgiye Ulaşma ve Biçimlendirme
Yazılım Gelişimi. Donanım gelişimine paralel olarak süren yazılım gelişimi, son on yılda kayda değer bir ivmelenme ile bilgisayarları, herhangi bir uzmanlık.
Slide 1 Web 2.0 Teknolojileri ve Uygulamaları Çalıştayı, 4 Aralık 2009, Ankara Web 2.0, Semantik Web ve Kütüphanelerin Geleceği Yaşar Tonta ve Umut Al.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
KOBİ – ŞİRKET PORTALI BİTİRME PROJESİ EMRE UYUMAZ & ANIL GÜR.
Copyright © The OWASP Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the OWASP License. The OWASP.
İŞLETİM SİSTEMİ.
BULUT BİLİŞİM SERVİS MODELLERİ
BİT’ini Kullanarak Bilgiye Ulaşma ve Biçimlendirme
Hazırlayan: Yeşim EKİCİ. Dünya genelindeki bilgisayar ağlarını ve kurumsal bilgisayar sistemlerini birbirine bağlayan elektronik iletişim ağıdır Internet.
WEB TASARIMININ TEMELLERİ
RSS Rss nedir? Rss özellikleri nelerdir? Rss Nasıl kullanılır?
İNTERNET TARAYICI (WEB BROWSER) PROGRAMLARI
BİT’İNİ KULLANARAK BİLGİYE ULAŞMA VE BİÇİMLENDİRME
WEB 2.0 ARAÇLARI TANITIM MUSTAFA EROĞLU
İnternet Teknolojisi Temel Kavramlar
Adnan TUTCAN Web 2.0 Nedir ? Toplulukları bir araya getiren, standart tasarım anlayışına yepyeni bir boyut kazandıran, daha dinamik özelliklere.
web dünyasında yeni bir yaklaşım: AJAX
İKMAP İnternet 1 Ders Notu
WEB SUNUCU LOGLARININ WEB MADENCİLİĞİ YÖNTEMLERİ İLE ANALİZİ
Bilgi Teknolojisinin Temel Kavramları
WEB2.0 ARAÇLARI Gökçe Hanım EMİR K ONULAR : ajax, rss, css, vidcast, podcast podcast.
Mobil Uygulama Geliştirme
AÇIK KAYNAK KOD F.Merve SARIKAYA. Açık kaynak kod, ürünün kayna ğ ına rahatça erişebilme imkanı sunan bir uygulama geliştirme yöntemidir.
Dersi Özeti Kursun içeriğini özeti Alt başlıkları Proje Kurs esnasında kullanmayı planladığımı editörler HTMLe giriş Temel etiketler Notepad+’da.
Mobil Uygulama Geliştirme Teknikleri
NOT: Bu slayt üzerindeki resmi değiştirmek için resmi seçin ve silin. Ardından, kendi resminizi eklemek için yer tutucudaki Resimler simgesini tıklatın.
Web Tasarımı 2.Hafta. HTML Nedir  Hyper Text Markup Language (Hiper Metin İşaretleme Dili) web sayfalarını oluşturmak için kullanılan standart metin.
Web Önyüzü Nasıl Olmalı? : İskelet {css} : Görünüm JavaScript() : Etkileşim.
Metadata, z39.50, FRBR, ve RDA. Ders içeriği Web kaynakları ve web kaynaklarında kimlikleme Derin web – Yüzeysel web Arama Motorları Metadata Kopya Kataloglama.
NetOpenX-REST Burak Çelik Uyarlama Araçları Uzmanı.
Asp.Net Veritabanı İşlemleri
Server Yönetim Programları
Amazon Web Servisleri ve Javascript Dilinin Birlikte Kullanımı
Bu sununun aynısını (Animasyonlar vb
Bu sununun aynısını (Animasyonlar vb
Dünya Üzerine Yayılmış Çok-Kullanıcılı Çevrim-İçi Eğitsel
Genel PHP Akademik Bilişim 2003 Adana, Şubat 2003 Hidayet Doğan
Milli Eğitim Bakanlığı Eğitek Haydar TUNA Teknik Öğretmen ve Yazar
Sunum transkripti:

Web Uygulamalarında Yeni Bir Yaklaşım AJAX Eser SAHiLLiOĞLU .tr Alan Adı Yönetimi _______________________ 09 Şubat 2006 | AB’06 shl@sahillioglu.net | www.sahillioglu.net

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX İçindekiler AJAX Nedir? AJAX, … Çalışma Mantığı Kullanılan Teknolojiler Klasik Uygulamalarla Karşılaştırılması Destekleyen Browserlar Avantajları Dezavantajları Hızlı Yayılmasının Nedenleri Örnek Kodlar Örnek Uygulamalar Yanlışlar – Dikkat Edilmesi Gereken Noktalar Kullanılabileceği Yerler Kullanılmaması Gereken Yerler Kütüphaneler Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX AJAX Nedir? Asynchronous JavaScript and XML sözcüklerinin baş harflerinden oluşan AJAX, HTML/XHTML, XML, CSS, DOM, JS ve XMLHTTPREQUEST nesnesi ve sunucu taraflı dillerden birisinin (PHP, ASP, JSP vb.) beraber kullanılarak masaüstü yazılımlara benzer etkileşimli web arayüzleri/uygulamaları hazırlamak için kullanılmakta olan bir web geliştirme yaklaşımıdır. Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX bir kısaltmadır. bir dil değildir. bir program veya bir geliştirme ortamı değildir. bir web geliştirme yaklaşımı ve konseptidir. bir çok web teknolojisinin beraber ve ortak kullanımıdır. etkileşimli zengin web arayüzleri oluşturulmasını sağlar. Gmail’in veya Google’ın icadı değildir. indirilebilir bir şey değildir. XMLHTTPREQUEST’in diğer adı değildir. XMLHTTPREQUEST ile aynı şey değildir. Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Çalışma Mantığı İşlem, sayfa yüklendiğinde veya kullanıcı tarafından tetiklenir. XMLHTTPREQUEST nesnesi oluşturulur. Sunucu tarafına arka planda istek gönderilir. Sunucu taraflı işlemler yapılır. İşlenen veri kullanıcı tarafına XML veya metin olarak gönderilir. Veri işlenerek sayfaya yerleştirilir. Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Kullanılan Teknolojiler Bir AJAX uygulamasını tetiklemek için HTML ve JS XMLHTTPREQUEST nesnesini oluşturmak için JS Arka planda sunucuya asenkron HTTP talebi göndermek için XMLHTTPREQUEST nesnesi Sunucu tarafında yapılması istenen işlem için PHP, ASP/.NET, JSP vb. bir dil Sunucu tarafında üretilen çıktıyı almak için gene XMLHTTPREQUEST nesnesi Elde edilen bu çıktıyı işlemek ve sayfada istenen alana yerleştirmek için DOM, DHTML ve JS İşlenmiş çıktının renk, çizgi vb. şekilsel sunumu için de (X)HTML ve CSS kullanılmaktadır. Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Şekil 1: Klasik web uygulamaları ile AJAX yaklaşımının karşılaştırılması [http://www.adaptivepath.com/publications/essays/archives/000385.php] Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Şekil 2: Klasik web uygulamalarındaki senkron etkileşimle AJAX yaklaşımındaki asenkron etkileşim [http://www.adaptivepath.com/publications/essays/archives/000385.php] Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Destekleyen Browserlar Bir browserın AJAX uygulamalarını desteklemesi için en temel şart javascript destekliyor olmasıdır. Bundan sonra ikinci şart ise XMLHTTPREQUEST nesnesini desteklemesidir. Mozilla Firefox 1.0 ve üstü Netscape 7.1 ve üstü Konqueror Microsoft Internet Explorer 4.0 ve üstü Opera 7.6 ve üstü Apple Safari 1.2 ve üstü Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Avantajları - 1 HTTP talepleri arka planda gidip geldiği için sayfa yeniden yeniden yüklenmiyor. Sadece gerekli veriler gidip gelmekte olduğundan hızlı yükleme ve yüksek miktarda bandwith tasarrufu saglar Etkileşimli web arayüzleri hazırlanmasına olanak tanır. Masaüstü uygulama deneyimlerine heryerden erişilebilirlik avantajını ekler. Bir çok web calışanının bildiği teknolojilerin birarada kullanılması nedeniyle öğrenmesi ve uygulaması kolaydır. Hazır ve açık kaynak kodlu gelişmiş kütüphanelere sahiptir. Özellikle etkileşim amaçlı kullanılan ancak her yerde standart olmayan ve ek olarak gereksiz bw harcatan FLASH ve JAVA yerine daha az kaynak tüketen tasarruflu bir yaklaşımdır. Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Avantajları - 2 Hızlı uygulama geliştirme imkanı verir. Sorunlu IFRAME ve POPUP kullanımına son vermektedir. CSS, DOM, XHTML, JS benzeri teknolojilerin kullanımına ve gelişmesine katkıda bulunmaktadır. Güvenli olmayan JS denetimleri yerine sunucu tabanlı basit ve hızlı girdi denetim mekanizmaları Kullanıcı için zaman tasarrufu - sayfa yenilememe Back/forward/bookmark butonlarının calışmaması [dezavantajlar kısmında ayrıca bahsedilecek] Anlık ve tek seferlik üretilen içeriğin arama motorlarınca indekslenememesi Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Dezavantajları Yüksek miktarlarda işlemci ve bellek kullanan browserların daha da fazla kaynak tüketmesi Olmazsa olmaz kabul edilen back, forward ve bookmark fonksiyonlarının işlememesi [örnek: http://wp-plugins.net/] Yukarıdaki fonksiyonları/butonları calıştırmak için ek kütüphaneler ve kodlar=daha çok kaynak tüketimi İçeriğin arama motorları tarafından taranamaması XHR, IE’de bir activeX nesnesidir ve activeX bazı kurumlarda engellendiğinden AJAX uygulamaları çalıştırılamayabiliyor. JS desteklemeyen veya JS destegi kapalı olan browserlara/kullanıcılara yönelik ek çalışmalar yapmak zorunda olmak Sayfaların kaydedilememesi, düzgün çıktı alamama Kullanıcılar hakkında, kendi izinleri haricinde oldukça fazla bilginin toplanabilmesine olanak saglaması Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Hızlı Yayılmasının Nedenleri Öğrenmesi kolay, uygulaması hızlı Cezbedici çünkü etkileşimli Açık kaynak JS ve AJAX kütüphaneleri Google/Yahoo tarafından geniş çapta ve ciddi biçimde kullanılması [ Gmail / Flickr / Maps ] Neredeyse tüm browserlar tarafından desteklenmesi Yüksek hız, bw tasarrufu, web geliştiricilerin sorunlarına çözüm Heryerden erişilebilir, masaüstüne benzer web uygulamaları ve yazılımlarına olanak tanıması Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Örnek Kodlar - 1 Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Örnek Kodlar - 2 Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX XHR Nesne Methodları Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX XHR Nesne Özellikleri Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Örnek Uygulamalar Gmail | Maps -- maps.google.com | gmail.com Login http://www.jamesdam.com/ajax_login/login.html Backbase http://projects.backbase.com/RUI/shop.html http://www.backbase.com/demos/travel Kayıt Formu http://defter.sahillioglu.net/filearea/demos/xmlhttprequest-ajax/php-integration/ Whois http://defter.sahillioglu.net/filearea/demos/xmlhttprequest-ajax-whois/ Kartvizit Uygulaması http://www.baekdal.com/x/xmlhttprequest http://www.baekdal.com/articles/Usability/usable-XMLHttpRequest İl - İlçe seçimi http://defter.sahillioglu.net/filearea/demos/xmlhttprequest_selects http://pleann.satt.web.tr/sub.php?do=newuser Multi Select Box http://developer.apple.com/internet/webcontent/XMLHttpRequestExample/example.html AJAX ve SOAP ile Amazon’da Şarkıcı Arama http://defter.sahillioglu.net/filearea/demos/ajax-php-soap-wsdl-pear-amazon/ Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

- Yanlışlar - Dikkat Edilmesi Gereken Noktalar AJAX’ı sadece kullanmış olmak için kullanmak Kullanıcı alışkanlıklarını gözardı etmek (bookmark, back, forward, print, send to friend vb.) [http://www.contentwithstyle.co.uk/Articles/38/fixing-the-back-button-and-enabling-bookmarking-for-ajax-apps] Geribildirimlerde bulunmamak Çok uzun, büyük ve kötü kodlar (Ör: XML/DOM işlemleri+sunucu işlemleri) Normal uygulamalardaki hızı verememek Güvenlik gerektiren yerlerde kuralları ihlal etmek: SSL, md5 vb. Yetersiz testler: browser, JS, platform testleri Javascript’i kapalı veya JS desteği olmayan browser kullananları unutmak Kullanıcıların %11’lik kesimi JS kullanmıyor! Kullanıcıları yeni birşeyler öğrenmeye zorlamak/bütünsel değişiklikler Kullanıcının o anki odak noktasını kırmak Aynı anda çok fazla HTTP talebi göndermek ve almak Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Kullanılabileceği Yerler Formlar: Etkileşimli ve değişen yapıdaki karmaşık formlar Hiyerarşik yapılar Sadece ihtiyaç duyulan veriyi çekme ve sunucuyu yormama prensibi Sürekli yenileme gerektiren sayfalar Oylama uygulamaları Girdi mekanizmaları ve içerik filtreleme İpuçları ve yardım metinleri Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Kullanılmaması Gereken Yerler Basit formlar Aramalar Basit menüler Çok büyük veri gönderilen ve alınan işlemler Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Kütüphaneler JAVA AjaxAnywhere AjaxTags DWR Echo2 Guise jsquery jWic JSON-RPC JRP ICEfaces Pushlets ASP Ajax.NET Professional Aspects of Ajax Atlas (Microsoft ASP.NET 2.0 AJAX platform) Bitkraft BorgWorX Ajax.NET AutoSuggestBox PowerWEB LiveControls for ASP.NET MonoRail ComfortASP.NET OutPost DotNetRemoting PHP HTML_Ajax XOAD xajax sajax pajax Class Ajax Pajaj symfony CakePHP Web Uygulamalarında Yeni Bir Yaklaşım: AJAX

Web Uygulamalarında Yeni Bir Yaklaşım: AJAX Teşekkürler... Eser SAHiLLiOĞLU .tr Alan Adı Yönetimi _______________________ 09 Şubat 2006 | AB’06 shl@sahillioglu.net | www.sahillioglu.net Web Uygulamalarında Yeni Bir Yaklaşım: AJAX