1. Web Teknoloji Kavramları
Ahmet Demirelli
ahmetdemirelli@sabanciuniv.edu
MCP, SCJP 5.0 , SCWCD 1.4
Sabancı Üniversitesi
Bilişim Teknolojileri
Yüksek Lisans Programı
6/9/2007 Sabanci University 1
2. Ajanda
CSS
RSS
SOAP
Web Servisleri
AJAX
Avantajları
Dezavantajları
MASHUP
6/9/2007 Sabanci University 2
4. CSS
Cascading Style Sheets
HTML e yardımcı bir görüntü biçimleme dili
Bir stil şablonu belirleyip sayfa içerisinde
istediğimiz alana uygulama
Belirlenmiş şablonu ayrı bir dosya halinde
başka HTML sayfalarına uygulama
6/9/2007 Sabanci University 4
9. RSS Nedir?
Real Simple Syndication
Özel bir XML dosyasıdır.
Amaç belirli bir bilgiyi herkesin
anlayabileceği bir formatta paylaşıma
sunmaktır.
Örnek ; Haber Siteleri
http://news.yahoo.com/rss
http://www.cnn.com/services/rss/
6/9/2007 Sabanci University 9
10. RSS Format
<channel>
<title>Site Başlığı</title>
<link>Sitenin Adresi</link>
<description>site hakkında kısa bir tanım</description>
<language>sitenin dili</language>
<item>
<title> çerik Başlığı</title>
<link> çeriğin Tam Adresi (URI)</link>
<description>içerik hakkında kısa bir açıklama veya
içeriğin tümü</description>
</item>
</channel>
6/9/2007 Sabanci University 10
11. RSS
RSS Reader CNN News RSS
CNN News RSS
Politic News RSS
Politic News RSS
Yahoo News RSS
Yahoo News RSS
Sport News RSS
Sport News RSS
6/9/2007 Sabanci University 11
14. SOAP Nedir ?
Simple Object Access Protocol
Web Servisleri ile haberleşme standardı
Web Servisleri;
Uzak bir sunucu üzerinde çalışan özel bir method.
şleyiş olark herhangi bir metoddan farksızdır, input
parametreleri alır ve geriye bir değer döndürür
Web servis teknolojisi ise bu methodların uzaktan
çağırılabilmelerini sağlayan teknolojidir.
SOAP ise; bir web servisine istek gönderirken hangi formatta
gönderileceğini ve hangi formatt geri alınacağını belirler
B2B uygulamalarda kullanılır.
6/9/2007 Sabanci University 14
15. Web Servisleri & SOAP
Application Server
SOAP Request Message
Weather
HTTP
Web Service Weather
HTTP
Web Service
Web Service
Client Web Service
Client
GetWeather (())
GetWeather
SOAP Response Message
6/9/2007 Sabanci University 15
20. AJAX Nedir ?
AJAX (Asynchronous JavaScript and XML)
Bir web uygulama geliştirme tekniğidir.
Basit olarak; javascript kullanarak sunucuya bilgi
göndermek ve gelen bilgiyi aynı sayfada
göstermektir.
Bu yüzden web sayfalarının masaüstü(desktop)
uygulamalar gibi davranmasını sağlar.
Web uygulamalarına getirdiği yeniliklerden dolayı
Ajax uygulamaları “Web 2.0” uygulamaları olarakta
adlandırılır
6/9/2007 Sabanci University 20
21. Neden AJAX ihtiyacı
Basit bir web uygulaması
Girdi Kontrol Girdi Kontrol
Listele
Urün Ismi Gir
Veritabanı bağlantısı Veritabanı bağlantısı
Ürün seç
Ara
Geridönen sonuçlar Geridönen sonuçlar
Satın Al
Girdi Kontrol
Kredi Kartı Satın Alımın Verilerin Veritabanına
Kredi Kartı Onaylama
Adres Bilgileri Onaylanması Girilmesi ve onay
Veritabanı bağlantısı
Submit
şlem Başarıyla
Gerçekleştirildi
6/9/2007 Sabanci University 21
22. Neden AJAX ihtiyacı
Her işlem için ayrı bir sayfa görüntüleme
Her işlemin sunucuya (submit) gönderilmesi
şlem gerçekleştikten sonra yeni bir sayfaya
yönlendirme
Her yönlendirme sonucunda sayfaların yeniden
yüklenmesi
6/9/2007 Sabanci University 22
23. Neden AJAX ihtiyacı
Urun Listesi
Satın Alma Bileşeni
Hatalar
şlemler
(DIV)
Urun Listesi (DIV)
Kredi Kart
Girdi Kontrol
Bileşeni
Veritabanı işlemleri
Kredikart Formu (DIV)
Hataların bulunması
Fatura Bilgileri
Adres Formu (DIV)
Bileşeni
Arayüz
HTML bunun için yetersiz kalır
6/9/2007 Sabanci University 23
24. Nasıl Çalışır ?
HTTP
HTML
JavaScript
AJAX
CSS XML
DOM
6/9/2007 Sabanci University 24
25. Nasıl Çalışır ?
<script type=“text/javascript”> Bilgi Listele Servlet
XMLHttpRequest bilgileriAlServlet( req, res) {
request bilgilerini al
veritabanından bilgiyi çek
bilgiyi clienta döndür
function sonucIsle() {
}
…sunucudan gelen mesajı al
…mesajın yazılacağı nesneyi al
…mesajı yaz
}
function illeriGoster() {
… yeni request nesnesi (url, parms)
… callback fonksiyonu belirle
(sonucIsle())
Uygulama
… sunucuya gönder
}
Sunucusu
Adana
Adıyaman
A Afyon
.....
6/9/2007 Sabanci University 25
26. Avantajları
Zengin kullanıcı arayüzü
Formlardaki bilgilerin tamamını her defasında
sunucuya gönderilmesine gerek yoktur
Bu yüzdende network trafiğini azaltır
Sunucu tarafındaki teknolojiden bağımsızdır. (Sunucu
tarafında, java,.NET, php, perl...vs teknolojilerden
herhangibirisi kullanılabilir)
Sayfanın tamamı yerine bir bölümünün yenilenmesini
sağlar (asenkron çalışma)
Sadece submit butonlarıyla sunucuya ulaşmak yerine
daha fazla event kullanma imkanı sağlar
6/9/2007 Sabanci University 26
27. Dezavantajları
Back butonu işlevini kaybeder
Her browser için ayrı kod yazmak gerekir
Çalışılan domain dışındaki bir domaine ulaşılamaz
Eğer javascript disable edilmişse çalışmaz
Debug edilmesi çok zordur
yi bir sunucu taraflı programlamanın yanısıra çok iyi
bir javascript bilgiside gereklidir
6/9/2007 Sabanci University 27
28. Örnek Ajax Uygulamaları
t ocs
ges D
Sug le
oog
e
ogl G
Go
line
n
oO
Kik vim
gle heets ı
ak lamas
o
Go eads T
ygu
Spr U
6/9/2007 Sabanci University 28
29. Örnek Ajax Uygulamaları
Backbase
http://www.backbase.com
http://www.backbase.com/RUI/shop.html
Real Time HTML Editor
http://htmledit.squarefree.com/
Google Maps
GTalk
.....
6/9/2007 Sabanci University 29
31. Mashup Nedir ?
Mashup (Web Application Hybrid)
Birden fazla değişik kaynaktan gelen içeriği
kullanarak tamamen yeni bir servis
oluşturmaktır.
Mashup oluşturmak için birden fazla
kaynaktan verileri;
Web Servisleri
RSS
API (Hizmeti veren firmanın bize sağladığı
interface) aracılığıyla alabiliriz.
6/9/2007 Sabanci University 31
32. Örnek Mashup
Mashup Uygulaması Müşteri
Müşteri
Adresleri
Adresleri
Google Map
Google Map
API
API
6/9/2007 Sabanci University 32
33. Mashup API
Popüler Mashup API leri
Amazon Web Services
del.icio.us
digg
eBay
FeedBurner
Flickr
Google
Twitter
Virtual Earth
YouTube
6/9/2007 Sabanci University 33
34. Mashup Örnekleri
http://mashupawards.com
http://www.hipoqih.com
Bir web uygulaması ve bir plugin (mobil
cihazlar için) den oluşan bir uygulamadır.
Mashup Hakkında Daha Fazla Bilgi
çin;
http://www.softwaretrainingtutorials
.com/mashups.php
6/9/2007 Sabanci University 34
35. SORULAR ??
ahmetdemirelli@sabanciuniv.edu
6/9/2007 Sabanci University 35