ASP sayfaları web sunucusu altında çalışan, içindeki scriptler sayesinde aktif olarak web sayfası oluşturan ve oluşturduğu sayfayı sunucuya bağlanmış olan internet browser' ına gönderen interaktif sayfalardır. Internet ortamında çalıştığı için herkesin aşina olduğu aşağıdaki temel elemanları kullanır:
ASP,
1996 yılının Kasım ayında Microsoft’un bir Active Platform
dizaynını açıklaması ile doğdu. Active Platform, Microsoft’un
bir masaüstü bilgisayar ile bir server bilgisayarın nasıl
haberleşmesi gerektiği konusundaki fikirlerini yansıtmaktadır.
Active Desktop ve Active Server olarak iki bölümden oluşur. Active
Desktop client tarafını ya da HTML sayfalarının bir web browser
üzerinde izlendiği kullanıcı tarafını temsil etmektedir. Active
Server ise server tarafı componentini temsil etmektedir. Server
tarafından işlenen sayfalar da Active Server Pages adını
almaktadır.
Microsoft’un
dökümanları ASP’yi “dinamik, interaktif, yüksek performanslı
Web server uygulamalarını yaratıp çalıştırmak için
kullanabileceğiniz bir server tarafı scripting ortamı” olarak
tanımlamaktadır. ASP dosyaları sade HTML dosyalarının
verebileceğinden çok daha yüksek seviyede interaktiflik
sağlayabilmek için HTML’i, scriptleri ve ASP kodlarını
birleştirmektedir. ASP ile Windows NT üzerinde çalışan
programcılar dışarıdan gelen bilgileri temel alarak sayfalarının
nasıl görüntüleneceğini düzenleyebilirler. Her hafta farklı
bir resim veya kullanıcının yaşına göre bilgi gösterilebilir.
Durum
dallanması
(Condition
Branching)
olarak adlandırılan bu işlem ASP’ye belirli durumlar karşısında
ne göstereceğine karar verme olanağı sağlamaktadır.
Diğer
yanda HTML’in bunu yapmak için hiç bir şansı yoktur. Çünkü
HTML sadece gösterme amaçlı bir dildir. Gerçek hayatta genellikle
kullanıcılarınızın tecrübelerine bağlı olarak farklı
içeriklere sahip olan sayfalar sunmak isteyeceksiniz. Bunun için
önce karar verme yeteneğine sahip olmanız lazım.
DOSYALAR
NASIL İŞLENİR?
Normalde
HTML dosyaları client tarafında (yani kullanıcının web
browserında) işlenmekedir. Microsoft’un Active Server Platform’u
sayesinde artık server tarafı da dosyaları işleyebilecektir.
Burada server’ın işlemesinden kasıt bir dosyanın kullanıcının
browser’ında gösterilmeden önce server tarafından bazı temel
adımların tamamlanmasıdır:
Dosyanın uzantısına bakar. Eğer dosya .html ya da .htm gibi standart bir uzantıya sahipse server dosyayı browser’a gönderir. Eğer dosya .asp (ya da .asa) gibi bir uzantıya sahipse server dosyayı açar ve içinde ASP kodunu belirten tag’ları aramaya başlar. ASP kodu özel tag’lar dahilinde yazılır; "<%" kodun başlangıcını," %>" ise kodun bitişini gösterir. | |
Server bu
işaretlerin dahilindeki kodu işleme koyar ve onun yerine HTML
kodu yazar. Bu HTML kodu kullanıcının ayarları ile bilgiye ya
da client tarafındaki diğer durumlara dayanmaktadır.
|
|
Sonuç olarak kendi
orijinal ve ayrıca ASP tarafından üretilen işaretleri taşıyan
sayfa kullanıcının browser’ına gönderilir.
|
Bir
alışveriş kartı örneğini ele alalım. Bir müşterinin
mağazanın kataloğundan 5 tane malzemeyi seçtiğini farzedelim. Bu
seçimler satır sütunları olan bir tablo içeren bir alışveriş
kartı sayfasında listelenecektir. Her sütunun en üstünde örneğin
miktar, stok numarası ya da fiyat gibi bir başlık olacaktır.
İçeriği müşterinin ne seçtiğine bağlı olarak değişen bu
sayfayı nasıl dizayn etmeyi düşünürdünüz?
Sütun
başlıkları değişmeyeceği için onlar orijinal HTML kodunun
içine yerleştirilebilir. Tablonun pozisyonu da büyük ihtimalle
değişmeyeceği için o da HTML dosyasına dahil edilebilir. Sayfaya
ne kadar geri dönüp tekrar izlesenizde bunlar değişmeyecek olan
değerlerdir.
Ancak
tablonun içi alışveriş için kullanıcının ne seçtiğine bağlı
olarak değişecektir. Siteye giren herkes değişik malzemeler
seçebilir. Bunu gösterebilmek için ASP bilgileri bir database’den
çeker ve kullanıcaya gönderilmeden önce bunları HTML kodunun
içine gömer. Programcılar bu tür sayfaları “on
the fly”
olarak tanımlıyorlar çünkü gerçekte böyle bir sayfa yok. Bunun
yerine gerektiğinde istek üzerine (on the fly) oluşturuluyor. ASP
scripti statik sayfa elemanları ile database’den seçilen
bilgileri birleştirerek safyanın tamamını oluşturur.
ASP’
Yİ GENİŞLETMEK İÇİN SCRIPT KULLANMAK
VBScript,
JavaScript ve JScript bir HTML dosyasına eklendiğinde görüntü
üzerinde değişikliklere olanak sağlayan scripting dilleridir. Bu
diller genellikle client tarafında çalıştırılırlar yani başka
bir deyişle kullanıcının browser’ı tarafından işletilirler.
Ancak
bazı ciddi dezavantajları mevcuttur:
-
Browser’a özeldirler. Yani aynı kod browser’a bağlı olarak
farklı çalıştırılabilirler.
-
Bir database ile ilişki (ürün kataloğu gibi) kuramazlar ve bilgi
saklayamazlar.
Bu
dezavantajlarına rağmen scripting dilleri kullanışlı
olabilirler. Muhtmelen en iyi kullanılabilecekleri alan bilgi
onaylamaktır (data
validation).
Mesela server’ a işleme konması için gönderilmeden önce bir
giriş formu üzeinde eksik alan olup olmadığının kontrol
edilmesi gibi. Bu gönder düğmesine basıldığı zaman çalışan
bir script sayesinde gerçekleştirebilir. Fonksiyon formun bütün
alanlarını kontrol edecek ve eğer bir alan boş bırakılmışsa
kullanıcıyı bilgilendirecek şekilde bir hata mesajı
gönderecektir.
Scriptler
server tarafında da kullanılabilir ama genellile kullanıcı
tarafında kullanılırlar. SCRIPT tag’ının bir özelliği
sayesinde programcı kodun nerede çalışacağını tayin edebilir.
Default olarak kod client tarafında işleme konur ancak bunu
değiştirmek programcının elindedir.
COMPONENTLER
VE OBJECTLER (BİLEŞENLER VE NESNELER)
Componentler
ve objectler server’ın ortamı ve sistemi ile haberleşmek için
kullanılan araçlardır. Bir component bir ya da birden fazla
object’i içerebilir. Ve bir object de bir ya da daha fazla metod
ve bir ya da daha fazla özellik (properties) içerebilir. (Metodları
dilbilgisindeki fiiller özelikleri de sıfatlar olarak
düşünebilirsiniz). Bir object’in bir örneğini (instance)
yaratarak görevleri yapmak için metodlarını kullanabilirsiniz.
Bir object’in özelliklerini değiştirmek metodlarının görevleri
farklı icra etmesine sebep olur.
Bazı
objectler ASP, bazıları VBScript ve bazıları da server sisteminin
içine gömülmüştür. Bir uygulamayı daha rahat geliştirmek için
başka componentler de yaratılabilir.
Ortak
Componentler ve Objeler
|
||
Object
/ Component
|
Fonksiyonu
|
Kaynak
|
Request Object
|
Browser’dan gelen istekleri düzenler |
ASP içine gömülmüş
|
Response
|
Browser’a
gönderilen bilgiyi düzenler
|
ASP içine gömülmüş
|
Server Object
|
Bazı temel server
servislerine erişimi sağlar
|
ASP içine gömülmüş
|
Application Object
|
Bir uygulamanın
yaşamı için bilgileri düzenler
|
ASP içine gömülmüş
|
Session Object
|
Bir session’ın
yaşamı için bilgileri düzenler
|
ASP içine gömülmüş
|
Text Object
|
Text dosyalarını
kullanır
|
VBScript scripting
object
|
Error Object
|
Hata analizi sağlar
|
VBScript scripting
object
|
Dictionary Object
|
Lookup referans
oluşturur
|
VBScript scripting
object
|
File System Object
|
Dosya sistemlerine
erişim sağlar
|
VBScript scripting
object
|
Content Linking
|
Sitedeki sayfalara
bir düzen verir
|
Server Component
|
Browser
Capabilities
|
Browser’ının ne
yapabileceğini belirler
|
Server Component |
Ad Rotator
|
Sayfa üzerinde bir
noktada reklamları döndürür
|
Server Component
|
Voting
|
Kullanıcı
havuzundan bilgi toplar
|
Server Component
|
Active Database
|
Bir database ile
iletişim kurar
|
Server Component
|
MUHTEMEL
DEZAVANTAJLAR
ASP
dinamik web içeriği için kuvvetli bir araç olmakla beraber diğer
çözümler gibi onun da bazı dezavantajları mevcuttur. ASP sadece
Windows NT ve 95 içinde çalışır. ASP kullanmak için bir
Microsoft web server’ına (genellikle Internet Information Server)
ihtiyaç duyulur. Diğer sunumcularda ASP için Chili!ASP adlı ürünü
kullanmak gerekir. Ayrıca ASP cookie kullanmaktadır. Bu da Lynx
kullanan kullanıcıların sayfalara erişememesi demektir. Gerçi
günümüzde Lynx kullanan kullanıcıların sayısı oldukça az ve
hedef kitlenin büyük bir kesimine
hitap etmemektedir.
Durumunuza
ve ihtiyaçlarınıza bağlı olarak ASP sizin için en iyi çözüm
olabilir. ASP’nin piyasada şu an rekabet halinde bulunduğu diğer
rakibinin adı Cold Fusion’dır. Allaire Grubu tarafından
yaratılan Cold Fusion da sizin Access ve SQL Server gibi
database’lere erişmenize olanak vermektedir. Bunun yanında Cold
Fusion’ın tagları biraz kafa karıştırıcı ve hata ayıklaması
biraz daha zor olabilir ve bazı kullanıcılar bellek problemleri
ile karşılaşmışlardır
0 yorum:
Yorum Gönder