Not:

Dreamweaver CC ve sonraki sürümlerinde kullanıcı arabirimi basitleştirilmiştir. Sonuç olarak, bu makalede açıklanan seçeneklerden bazılarını Dreamweaver CC ve sonraki sürümlerinde bulamayabilirsiniz. Daha fazla bilgi için bu makaleye bakın.

Web uygulamaları hakkında

Web uygulaması, kısmen veya tamamen belirlenmemiş içeriğe sahip sayfalar içeren bir web sitesidir. Sayfanın son içeriği yalnızca ziyaretçi web sunucusundan sayfa istediğinde belirlenir. Sayfanın son içeriği ziyaretçinin eylemlerine göre istekten isteğe göre değiştiğinden, bu tür sayfalara dinamik sayfa denir.

Web uygulamaları çeşitli zorlukları ve sorunları gidermek için oluşturulur. Bu bölümde web uygulamaları için yaygın kullanımlar açıklanmakta ve basit bir örnek verilmektedir.

Web uygulamaları için yaygın kullanımlar

Web uygulamaları hem site ziyaretçileri hem de geliştiriciler için aşağıdakiler dahil birçok kullanıma sahiptir:

  • Ziyaretçilerin içerik bakımından zengin bir web sitesinde bilgileri hızlı ve kolay bir şekilde bulmasını sağlama.

    Bu tür web uygulamaları, ziyaretçilere içerikte uygun gördükleri şekilde arama, düzenleme ve gezinme yapma olanağı sağlar. Örnek olarak şirket intranetleri, Microsoft MSDN (www.msdn.microsoft.com) ve Amazon.com (www.amazon.com) verilebilir.

  • Site ziyaretçileri tarafından sağlanan verileri toplayın, kaydedin ve analiz edin.

    Geçmişte HTML formlarına girilen veriler işlenmek üzere çalışanlara veya CGI uygulamalarına e-posta mesajları olarak gönderilirdi. Web uygulaması form verilerini doğrudan veritabanına kaydedebilir ve ayrıca verileri çıkarabilir ve analiz için web tabanlı raporlar oluşturabilir. Örnek olarak çevrimiçi bankacılık sayfaları, mağaza çıkış sayfaları ve kullanıcı geri bildirim formları sayılabilir.

  • Sürekli değişen içeriğe sahip web sitelerini güncelleştirin.

    Web uygulaması, web tasarımcısını sitenin HTML'sini sürekli güncelleştirme yükünden kurtarır. Haber editörleri gibi içerik sağlayıcıları web uygulamasına içerik sağlar ve web uygulaması siteyi otomatik olarak güncelleştirir. Örnek olarak Economist (www.economist.comm) ve CNN (www.cnn.com) verilebilir.

Web uygulaması örneği

Jale, 1000 çalışanı bulunan orta ölçekli bir şirketin intraneti ve Internet sitelerinden sorumlu, uzman bir web tasarımcısı ve eski bir Dreamweaver kullanıcısıdır. Bir gün İnsan Kaynakları'ndan Can bir sorunu için Jale'ye danışır. İK, çalışanlara yürüdükleri, koştukları veya bisiklet bindikleri her kilometre için puanlar veren bir çalışan spor programını yürütmektedir. Her çalışan aylık toplam kilometre sayısını Can'a rapor etmektedir. Ayın sonunda Can tüm e-posta mesajlarını toplayıp, toplam puanlarına göre çalışanlara küçük para ödülleri dağıtmaktadır.

Can'ın yaşadığı sorun ise, bu spor programının zaman içinde çok başarılı bir hale gelmesidir. Programa o kadar çok çalışan katılmaktadır ki Can her ayın sonunda adeta e-posta akınına uğramaktadır. Can Jale'ye bunun için web tabanlı bir çözüm olup olmadığını sorar.

Jale, aşağıdaki işleri gerçekleştiren bir intranet tabanlı web uygulaması önerir:

  • Kullanıcıların basit bir HTML formunu kullanarak kilometre bilgilerini bir web sayfasına girmelerini sağlama

  • Çalışanların kilometre bilgilerini bir veritabanında saklama

  • Kilometre verilerini esas alarak sağlık puanları hesaplama

  • Çalışanların aylık ilerlemelerini izleyebilmelerini sağlama

  • Can'ın her ayın sonunda tek tıklatmayla toplam puanlara erişebilmesini sağlama

    Jale, bu tür bir uygulamayı hızlı ve kolay bir şekilde oluşturabilmesi için gerekil araçlara sahip olan Dreamweaver'ı kullanarak uygulamayı öğle tatiline kadar hazır ve kullanılabilir hale getirir.

Web uygulamasının çalışma biçimi

Web uygulaması bir statik ve dinamik web sayfası derlemesidir. Statik web sayfası, site ziyaretçisi sayfayı istediğinde değişmeyen bir sayfadır: Web sunucusu sayfayı isteyen web tarayıcısına değiştirmeden gönderir. Ancak dinamik web sayfası isteyen tarayıcıya gönderilmeden önce sunucu tarafından değiştirilir. Sayfaya dinamik denmesinin nedeni değişken yapısıdır.

Örneğin, sağlık sonuçlarını görüntüleyen bir sayfa tasarlayabilir ve bazı bilgilerin (çalışanın adı ve sonuçlar gibi) sayfa belirli bir çalışan tarafından istendiğinde belirlenmesini sağlayabilirsiniz.

Sonraki bölümlerde web uygulamalarını çalışma biçimi daha ayrıntılı bir biçimde açıklanmaktadır.

Statik web sayfalarını işleme

Statik web sitesi, web sunucusunda çalışan bir bilgisayarda bulunan ilgili HTML sayfaları ve dosyaları kümesidir.

Web sunucusu, web tarayıcılarından gelen isteklere yanıt olarak web sayfaları sunan bir yazılımdır. Sayfa istekleri ziyaretçi tarafından web sayfasındaki bir bağlantı tıklatıldığında, tarayıcıda bir yer imi seçildiğinde veya tarayıcının adres metni kutusuna URL girildiğinde oluşturulur.

Statik web sayfasının en son içeriği sayfa tasarımcısı tarafından belirlenir ve bu içerik sayfa istendiğinde değişmez. Örneğin:

<html> 
    <head> 
        <title>Trio Motors Information Page</title> 
    </head> 
    <body> 
        <h1>About Trio Motors</h1> 
        <p>Trio Motors is a leading automobile manufacturer.</p> 
    </body> 
</html>

Sayfanın HTML kodunun her sayfası, sayfa sunucuya konmadan önce tasarımcı tarafından yazılır. HTML sunucuya konduğunda değişmediğinden bu tür sayfalara statik sayfa denir.

Not:

Tam anlamıyla bakıldığında “statik” bir sayfa aslında hiç de statik olmayabilir. Örneğin, rollover görüntüsü veya Flash içeriği (SWF dosyası) statik sayfanın canlı hale gelmesini sağlayabilir. Ancak, bu belgede değiştirilmeden tarayıcıya gönderilen sayfalar statik sayfa olarak anılmaktadır.

Sunucu bir statik sayfa isteği aldığında, aşağıdaki örnekte de görüldüğü gibi sunucu isteği okur, sayfayı bulur ve isteyen tarayıcıya gönderir:

Statik web sayfasını işleme
Statik web sayfasını işleme

A. Web tarayıcısı statik sayfa ister. B. Web sunucusu sayfayı bulur. C. Web sunucusu sayfayı isteyen tarayıcıya gönderir. 

Web uygulamaları örneğinde ziyaretçi sayfayı istediğinde belirli kod satırları belirlenmemiştir. Sayfanın tarayıcıya gönderilebilmesi için, bu satırların bir mekanizma tarafından belirlenmesi gerekir. Mekanizma aşağıdaki bölümde ele alınmaktadır.

Dinamik sayfaları işleme

Web sunucusu tarafından bir statik web sayfası isteği alındığında, sunucu sayfayı doğrudan isteyen tarayıcıya gönderir. Ancak web sunucusu dinamik sayfa isteği aldığında farklı bir şekilde davranır: Sayfayı, sayfayı tamamlamaktan sorumlu olan özel bir yazılıma gönderir. Bu özel yazılıma uygulama sunucusu denir.

Uygulama sunucusu sayfadaki kodu okur, sayfayı kodda yer alan yönergelere uygun olarak tamamlar ve kodu sayfadan kaldırır. Sonuçta uygulama sunucusunun tekrar web sunucusuna ilettiği ve ardından web sunucusunun isteyen sunucuya gönderdiği bir statik sayfa elde edilir. Sayfa ulaştığında sunucunun aldığı tamamen HTML'dir. Aşağıda bu sürecin bir görünümü verilmiştir:

Dinamik sayfaları işleme
Dinamik sayfaları işleme

A. Web tarayıcısı dinamik sayfa ister. B. Web sunucusu sayfayı bulur ve uygulama sunucusuna iletir. C. Uygulama sunucusu sayfada yönerge olup olmadığını tarar ve sayfayı tamamlar. D. Uygulama sunucusu tamamlanan sayfayı tekrar web sunucusuna iletir E. Web sunucusu tamamlanmış sayfayı istekte bulunan tarayıcıya gönderir 

Veritabanına erişme

Uygulama sunucusu, veritabanı gibi sunucu tarafındaki kaynaklarla çalışabilmenizi sağlar. Örneğin, dinamik sayfa, uygulama sunucusunun veritabanından veri çıkarması ve bu verileri sayfanın HTML'sine eklemesi komutunu verebilir. Daha fazla bilgi için bkz. www.adobe.com/go/learn_dw_dbguide_tr.

İçerik saklamak için veritabanı kullanmak, web sitenizin tasarımını, site kullanıcılarına göstermek istediğiniz içerikten ayırır. Her sayfa için ayrı HTML dosyası yazmak yerine göstermek istediğiniz farklı bilgiler için tek bir sayfa—veya şablon—yazmanız gerekir. Sonra veritabanına içerik yükleyebilir ve web sitesinin bu içeriği, kullanıcı isteklerine yanıt verirken çekmesini sağlayabilirsiniz. Ayrıca tek bir kaynakta bilgi güncelleştirebilir, sonra o değişikliği web sitesinini tamamına, her sayfayı ayrı ayrı düzeltmeniz gerekmeden yayabilirsiniz. Adobe Dreamweaver'ı bir veritabanına veri eklemek, oradaki verileri güncelleştirmek veya oradan veri silmek üzere web formları tasarlamak için kullanabilirsiniz.

Veritabanından veri çıkarma komutuna veritabanı sorgusu denir. Sorgular, SQL (Structured Query Language) adı verilen bir veritabanı dilinde ifade edilen arama ölçütleridir. SQL sorgusu sayfanın sunucu tarafındaki komut dosyalarına veya etiketlere yazılır.

Veritabanının sahip olduğu format Microsoft Word belgesinin Not Defteri'nde açılmasına veya BBEdit şifresinin çözülememesine benzer şekilde, verilerin şifresini çözülemez yaptığından, uygulama sunucusu veritabanıyla doğrudan iletişim kuramaz. Uygulama sunucusu veritabanıyla yalnızca veritabanı sürücüsü aracılığıyla iletişim kurabilir: Uygulama sunucusu ve veritabanı arasında çevirmen işlevi gören bir yazılım.

Sürücü iletişim kurduktan sonra sorgu veritabanında yürütülür ve bir kayıt kümesi oluşturulur. Kayıt kümesi veritabanındaki bir veya daha çok tablodan çıkarılan bir veri kümesidir. Kayıt kümesi, sayfayı tamamlamak için verileri kullanan uygulama sunucusuna iletilir.

Aşağıda SQL dilinde yazılmış basit bir veritabanı sorgusu belirtilmiştir:

SELECT lastname, firstname, fitpoints 
FROM employees

Bu ifade üç sütunlu bir kayıt kümesi oluşturur ve bunu veritabanındaki tüm çalışanların soyadı, adı ve sağlık puanlarını içeren satırlarla doldurur. Daha fazla bilgi için bkz. www.adobe.com/go/learn_dw_sqlprimer_tr.

Aşağıdaki örnekte veritabanı sorgulama ve tarayıcıya veri döndürme süreci gösterilmektedir:

Veritabanına erişme
Veritabanına erişme

A. Web tarayıcısı dinamik sayfa ister. B. Web sunucusu sayfayı bulur ve uygulama sunucusuna iletir. C. Uygulama sunucusu sayfada yönerge olup olmadığını tarar. D. Uygulama sunucusu sorguyu veritabanı sürücüsüne gönderir. E. Sürücü sorguyu veritabanında yürütür. F. Kayıt kümesi sürücüye döndürülür. G. Sürücü kayıt kümesini uygulama sunucusuna döndürür H. Uygulama sunucusu sayfaya veriler ekler ve ardından sayfayı web sunucusuna iletir I. Web sunucusu tamamlanmış sayfayı istekte bulunan tarayıcıya gönderir. 

Sunucuya uygun bir veritabanı sürücüsü yüklendiği sürece, web uygulamanızda hemen hemen istediğiniz tüm veritabanlarını kullanabilirsiniz.

Küçük, düşük maliyetli uygulamalar oluşturmayı düşünüyorsanız, Microsoft Access içinde oluşturulanlar gibi dosya tabanlı bir veritabanı kullanabilirsiniz. Güçlü, işiniz bakımından kritik öneme sahip uygulamalar oluşturmayı düşünüyorsanız, Microsoft SQL Server, Oracle 9i veya MySQL içinde oluşturulanlar gibi sunucu tabanlı bir veritabanı kullanabilirsiniz.

Veritabanınız web sunucunuz dışındaki bir sistemde bulunuyorsa, web uygulamanızın hızlı ve etkin bir şekilde çalışabilmesi için iki sistem arasında hızlı bir bağlantıya sahip olduğunuzdan emin olun.

Dinamik sayfalar hazırlama

Dinamik sayfa hazırlama önce HTML'nin yazılmasını ve ardından sayfayı dinamik yapmak için sunucu tarafındaki komut dosyalarının veya etiketlerin HTML'ye eklenmesini içerir. Sonuçta elde edilen kodu görüntülediğinizde dil sayfanın HTML'sinde katıştırılmış olarak görünür. Bu nedenle bu diller HTML katıştırılmış programlama dilleri olarak bilinir. Aşağıdaki temel örnekte ColdFusion Markup Language (CFML) kullanılmaktadır:

not: Dreamweaver CC ve sonraki sürümlerinde CFML desteği kaldırılmıştır.

<html> 
    <head> 
        <title>Trio Motors Information Page</title> 
    </head> 
    <body> 
        <h1>About Trio Motors</h1> 
        <p>Trio Motors is a leading automobile manufacturer.</p> 
        <!--- embedded instructions start here ---> 
        <cfset department="Sales"> 
        <cfoutput> 
        <p>Be sure to visit our #department# page.</p> 
        </cfoutput> 
        <!--- embedded instructions end here ---> 
    </body> 
</html>

Bu sayfadaki katıştırılmış yönergeler aşağıdaki eylemleri gerçekleştirir:

  1. Departman adında bir değişken oluşturma ve "Satış" dizesini buna ekleme.

  2. Değişkenin "Satış" değerini HTML koduna ekleme.

Uygulama sunucusu aşağıdaki sayfayı web sunucusuna döndürür:

<html> 
    <head> 
        <title>Trio Motors Information Page</title> 
    </head> 
    <body> 
        <h1>About Trio Motors</h1> 
        <p>Trio Motors is a leading automobile manufacturer.</p> 
        <p>Be sure to visit our Sales page.</p> 
    </body> 
</html>

Web sunucusu sayfayı isteyen web tarayıcısına gönderir ve bu aşağıdaki gibi görünür:

Trio Motors Hakkında

Trio Motors önde gelen bir otomobil üreticisidir.

Satış sayfamızı mutlaka ziyaret edin.

Sunucunuzda kullanılabilen sunucu teknolojisine bağlı olarak kullanmak üzere komut dosyası oluşturma veya etiket tabanlı bir dil seçersiniz. Aşağıda Dreamweaver tarafından desteklenen sunucu teknolojileri için en çok kullanılan diller belirtilmiştir:

Sunucu teknolojisi

Dil

ColdFusion

ColdFusion İşaretleme Dili (CFML)

Active Server Pages (ASP)

VBScript

JavaScript

PHP

PHP

Dreamweaver, sayfalarınızın çalışması için gerekli olan sunucu tarafındaki komut dosyalarını veya etiketleri oluşturabilir veya bunları bizzat Dreamweaver kodlama ortamında elle yazabilirsiniz.

Web uygulaması terminolojisi

Bu bölümde web uygulamalarıyla ilgili olarak sık kullanılan terimler tanımlanmaktadır.

Uygulama sunucusu

Web sunucusunun, sunucu tarafında komut dosyaları veya etiketler içeren web sayfalarını işlemesine yardımcı olur. Sunucudan bu tür bir sayfa istendiğinde web sunucusu sayfayı tarayıcıya göndermeden önce işlenmek üzere uygulama sunucusuna iletir. Daha fazla bilgi için bkz. Web uygulamasının çalışma biçimi.

Ortak uygulama sunucuları ColdFusion ve PHP'yi içerir.

Veritabanı

Tablolarda depolanan verilerin bir derlemesidir. Aşağıdaki örnekte görüldüğü gibi, tablonun her satırı bir kayıttan ve her sütun kayıttaki bir alandan oluşur.

Veritabanı kaydı
Veritabanı

Veritabanı sürücüsü

Web uygulaması ve veritabanı arasında çevirmen işlevi gören bir yazılımdır. Veritabanındaki veriler özel bir formatta saklanır. Veritabanı sürücüsü web uygulamasının normalde şifreli olacak verileri okumasına ve yönetmesine olanak tanır.

Veritabanı yönetim sistemi

(DBMS veya veritabanı sistemi) Veritabanlarını oluşturmak ve yönetmek için kullanılan yazılımdır. Sık kullanılan veritabanı sistemlerine örnek olarak Microsoft Access, Oracle 9i ve MySQL verilebilir.

Veritabanı sorgusu

Veritabanından kayıt kümesi çıkarma işlemidir. Sorgular, SQL adı verilen bir veritabanı dilinde ifade edilen arama ölçütleridir. Örneğin, sorgu kayıt kümesine yalnızca belirli sütunları veya kayıtların dahil edilmesini belirtebilir.

Dinamik sayfa

Sayfa tarayıcıya gönderilmeden önce uygulama sunucusu tarafından özelleştirilen bir web sayfasıdır.

Kayıt kümesi

Aşağıdaki örnekte görüldüğü gibi, veritabanındaki bir veya daha çok tablodan çıkarılan bir veri kümesidir.

Kayıt kümesi
Kayıt kümesi

İlişkisel veritabanı

Veri paylaşan birden çok tablo içeren bir veritabanıdır. DepartmanNo sütunu iki tablo tarafından paylaşıldığı için aşağıdaki veritabanı ilişkiseldir.

İlişkisel veritabanı
İlişkisel veritabanı

Sunucu teknolojisi

Uygulama sunucusunun çalıştırma sırasında dinamik sayfaları değiştirmek için kullandığı teknolojidir.

Dreamweaver geliştirme ortamı aşağıdaki sunucu teknolojilerini destekler:

  • Adobe® ColdFusion®

  • Microsoft Active Server Pages (ASP)

  • PHP: Hypertext Preprocessor (PHP)

    Ayrıca listelenmeyen diğer tüm sunucu teknolojileri için sayfa geliştirmek üzere Dreamweaver kodlama ortamını kullanabilirsiniz.

Statik sayfa

Sayfa tarayıcıya gönderilmeden önce uygulama sunucusu tarafından değiştirilmeyen bir web sayfasıdır. Daha fazla bilgi için bkz. Statik web sayfalarını işleme.

Web uygulaması

Kısmen veya tamamen belirlenmemiş içeriğe sahip sayfalar içeren bir web sitesidir. Bu sayfaların son içeriği yalnızca ziyaretçi web sunucusundan sayfa istediğinde belirlenir. Sayfanın son içeriği ziyaretçinin eylemlerine göre istekten isteğe göre değiştiğinden, bu tür sayfalara dinamik sayfa denir.

Web sunucusu

Web tarayıcılarından gelen isteklere yanıt olarak web sayfaları gönderen bir yazılımdır. Sayfa istekleri ziyaretçi tarafından web sayfasındaki bir bağlantı tıklatıldığında, tarayıcıda bir yer imi seçildiğinde veya tarayıcının adres metni kutusuna URL girildiğinde oluşturulur.

En çok kullanılan web sunucuları Microsoft Internet Information Server (IIS) ve Apache HTTP Server'ı içerir.

Bu çalışma Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License kapsamında lisanslanmıştır  Creative Commons şartları, Twitter™ ve Facebook sitelerinde paylaşılanları kapsamaz.

Yasal Uyarılar   |   Çevrimiçi Gizlilik İlkesi