35
6/9/2007 Sabanci University 1 Web Teknoloji Kavramları Ahmet Demirelli [email protected] MCP, SCJP 5.0 , SCWCD 1.4 Sabancı Üniversitesi Bilişim Teknolojileri Yüksek Lisans Programı

Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 1

Web Teknoloji KavramlarıAhmet Demirelli

[email protected]

MCP, SCJP 5.0 , SCWCD 1.4

Sabancı ÜniversitesiBilişim Teknolojileri

Yüksek Lisans Programı

Page 2: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 2

Ajanda

� CSS� RSS� SOAP

� Web Servisleri

� AJAX� Avantajları� Dezavantajları

� MASHUP

Page 3: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 3

CSS

Page 4: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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

Page 5: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 5

CSS

solid; BORDER-LEFT: #1F9FFF 0px solid; BORDER-RIGHT: #1F9FFF 0px

solid; BORDER-TOP: #1F9FFF 0px

solid; COLOR: #1F9FFF; FONT-FAMILY: Trebuschet MS; FONT-SIZE: 9pt;

FONT-WEIGHT: bold}

body{

scrollbar-face-color:#CCCCCC;

scrollbar-shadow-color:#FFFFFF;

scrollbar-highlight-color:#FFFFFF;

scrollbar-3dlight-color:#FFFFFF;

scrollbar-darkshadow-color:#FFFFFF;

scrollbar-track-color:#FFFFFF;

scrollbar-arrow-color:#CCCCCC;

font-size: xx-small; border-top-width: thin

}

style1.css

Page 6: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 6

CSS

CSSCSS

style1.css

Page1Page1

Page2Page2

Page4Page4

Page3Page3

� Belirlemiş olduğumuz stili sayfalarımıza uygulamak için, sayfların <head> </head> etiketleri arasına

<link href=“style1.css” rel=stylesheet type=text/css>

linki yazılır.

Page 7: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 7

CSS Ornek

� style1.css

� style2.css

� index.html

Page 8: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 8

RSS

Page 9: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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/

Page 10: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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>

Page 11: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 11

RSS

RSS Reader

Yahoo News RSSYahoo News RSS

Politic News RSSPolitic News RSS

Sport News RSSSport News RSS

CNN News RSSCNN News RSS

Page 12: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 12

RSS Ornek

Page 13: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 13

SOAP

Page 14: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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.

Page 15: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 15

Web Servisleri & SOAP

HTTPHTTPWeb Service Client

Web Service Client

WeatherWeb Service

GetWeather ( )

WeatherWeb Service

GetWeather ( )

Application Server

SOAP Request Message

SOAP Response Message

Page 16: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 16

SOAP RequestPOST /globalweather.asmx HTTP/1.1 Host: www.webservicex.netContent-Type: text/xml; charset=utf-8 Content-Length: length SOAPAction: "http://www.webserviceX.NET/GetWeather"

<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-

instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body>

<GetWeather xmlns="http://www.webserviceX.NET"> <CityName>string</CityName><CountryName>string</CountryName></GetWeather>

</soap:Body> </soap:Envelope>

Page 17: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 17

SOAP ResponseHTTP/1.1 200 OK Content-Type: text/xml; charset=utf-8 Content-Length: length

<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-

instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body>

<GetWeatherResponse xmlns="http://www.webserviceX.NET"> <GetWeatherResult>string</GetWeatherResult></GetWeatherResponse>

</soap:Body> </soap:Envelope>

Page 18: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 18

Web Service Örnek

� Basit bir web servis örneği

Page 19: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 19

AJAX

Page 20: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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

Page 21: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 21

Neden AJAX ihtiyacı

Urün Ismi GirAra

ListeleÜrün seçSatın Al

Girdi KontrolVeritabanı bağlantısıGeridönen sonuçlar

Girdi KontrolVeritabanı bağlantısıGeridönen sonuçlar

Kredi KartıAdres Bilgileri

Submit

Girdi KontrolKredi Kartı OnaylamaVeritabanı bağlantısı

Satın AlımınOnaylanması

Verilerin Veritabanına Girilmesi ve onay

İşlem BaşarıylaGerçekleştirildi

Basit bir web uygulaması

Page 22: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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

Page 23: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 23

Neden AJAX ihtiyacı

Satın Alma

İşlemler

Girdi Kontrol

Veritabanı işlemleri

Hataların bulunması

Arayüz

Urun ListesiBileşeni

Urun Listesi (DIV)

Kredikart Formu (DIV)

Adres Formu (DIV)

Hatalar

(DIV)

Kredi KartBileşeni

Fatura BilgileriBileşeni

HTML bunun için yetersiz kalır

Page 24: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 24

Nasıl Çalışır ?

AJAX

JavaScript

XML

HTML

CSS

DOM

HTTP

Page 25: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 25

<script type=“text/javascript”>

function illeriGoster() {

… yeni request nesnesi (url, parms)

… callback fonksiyonu belirle

(sonucIsle())

… sunucuya gönder

}

Nasıl Çalışır ?

XMLHttpRequest

function sonucIsle() {

…sunucudan gelen mesajı al

…mesajın yazılacağı nesneyi al

…mesajı yaz

}

A

Bilgi Listele Servlet

bilgileriAlServlet( req, res) {request bilgilerini alveritabanından bilgiyi çekbilgiyi clienta döndür

}

UygulamaSunucusu

AdanaAdıyamanAfyon.....

Page 26: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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

Page 27: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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

Page 28: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 28

Örnek Ajax Uygulamaları

Googl

e Sugg

est

Googl

e Docs

Googl

e

Spread

sheets

Kiko O

nline

Takvim

Uygul

aması

Page 29: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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

� .....

Page 30: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 30

MASHUP

Page 31: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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.

Page 32: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 32

Örnek Mashup

Müşteri AdresleriMüşteri Adresleri

Google MapAPI

Google MapAPI

Mashup Uygulaması

Page 33: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 33

Mashup API

� Popüler Mashup API leri� Amazon Web Services� del.icio.us� digg� eBay� FeedBurner� Flickr� Google� Twitter� Virtual Earth� YouTube

Page 34: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 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

Page 35: Web Teknoloji Kavramları - Sabancı Üniversitesipeople.sabanciuniv.edu/ahmetdemirelli/downloads/WebTech.pdf · 2007. 6. 9. · SOAP Nedir ? Simple Object Access Protocol ... tarafında,

6/9/2007 Sabanci University 35

[email protected]

SORULAR ??SORULAR ??