Yeni İnternet Teknolojileri
Aydın Yerlikaya  (ayd_1248@yahoo.com)

Merhaba ben Aydın Yerlikaya. Size bu makalede şu an okumakta olduğunuz yazının okumanıza ve hatta online bankacılık işlemleri yapmanıza olanak sağlayan teknoloji ve diğer kavramlar hakkında bilgiler aktaracağım.

Internet hakkında bilgi vermeden önce biz insanların nasıl iletişim kurduğunu düşünmenizi istiyorum. Evet, nasıl iletişim kuruyoruz? Konuşarak değil mi? Neyi istediğimizi ve nasıl istediğimizi dile getirirken küçükken gerek anne ve babalarımızın gerekse ilkokuldayken öğretmenlerimizin bize aktardığı kavramları ve anlamlarını düşünerek ifade ediyoruz. Zamanla sahip olduğumuz kavram ve anlam hazinesi büyüyor ve daha iyi kullanmaya başlıyoruz.

Lütfen 2. paragrafa bakarak benim sosyolog veya psikolog olduğumu düşünmeyin. Sadece internetin gelişimini anlatırken sizlere aktaracağım bilgilerin özünü, 2. paragrafı aklınızda tutarak okumanızı istiyorum.

Internet denen dünyada gezinerek, siz -yani istemci- benim makalemin şu an içinde bulunduğu sunucudan bilgi istiyorsunuz. Kısacası bilgi talep ediyorsunuz. Sunucu bilgisayar bir şekilde kendisinden istenen bilgileri istemci bilgisayar aktarmaya çalışıyor.

Bilgi aktarımı sırasında istemci bilgisayarın üzerinde çalışan bir istemci programı (Internet Explorer gibi) sunucu bilgisayarının üzerinde çalışan sunucu programının (Internet Information Server gibi) anlayabileceği ifadeler grubu ile talepte bulunuyor ve -mümkünse- talebine olumlu cevap alıyor.

Web sitelerini ziyaret ettiğinizde teknik anlamda olan şu: Sizin Internet Explorerınız sunucu bilgisayarın 80 -ki varsayılan değer- numaralı portuna bir mesaj iletiyor. Eğer sunucu bilgisayar bu mesajı farkederse mesajın kabuk olarak nitelendirebileceğimiz kısmını süzerek asıl talebi okuyor. Sonra kendisi bir mesaj oluşturuyor ve sizin kullandığınız programın anlayabileceği şekilde kabukluyor ve gönderiyor. Işte internete girip her adım atışınızda genelde bu sırada ve buna benzer işlemler gerçekleşiyor.

Şimdi konumuzla ilgili olan kısımda yani web sayfalarını okuduğunuzda kullanılan protokolü tanıyalım;
HTTP (Hypertext Transfer Protocol)
HTTP, web ortamında sunucularla istemciler arasında iletişim kurmasını sağlayan bir protokoldür. HTTP protokolünde işlemler bir istemcinin sunucudan bir talepte bulunması ile başlar. Sunucu kendisine gelen talebi inceler ve olumsuz ve/veya olumlu cevabını iletir. HTTP protokolünde talep ve cevap mesajlarının hepsinde "Başlık Bilgisi" (Header) bulunur. Başlık Bilgisi, "Gövde" (Body) adı verilen, istemcinin asıl istediği bölüm hakkında bilgiler içerir. Her talebe karşılık "Başlık Bilgisi" bulunurken "Gövde" olmayabilir. Günümüzde HTTP protokolünün 1.1 numaralı versiyonu vardır.
Her ne kadar HTTP işin teknik kısmını tanımlasada sayfaları okumamıza olanak sağlayan unsur, hem sunucunun hem de istemcinin bildiği ve kullandığı dildir. Lütfen şu an kullandığınız ve bu sayfayı okuyabildiğiniz programda "sayfa içeriğini göster" veya bu anlama gelen tuşuna basın veya tıklayın. Sayfanın ilk satırına bakın. Burada gördüğünüz ve "<" ve ">" işaretleri arasında yer alan ifadeyi -ki biz buna etiket diyoruz- inceleyin. Bu ve buna benzer ifadeler kullandığınız program tarafından komut olarak algılanıyor ve işlenip sayfanın size hoş görünmesini sağlıyor.
HTML (HyperText Markup Language)
HTML, bu makaleyi okumanızı sağlayan termolojidir. HTML, HTTP protokolünde bir istemcinin -yani sizin-, dünyanın herhangi bir yerinde bulunan sunucudaki sayfaları rahatça okuyabilmesi için kabul edilmiş ifadeler grubudur. Örneğin yazdığınız sayfada herhangi bir yerinde satır başı yapmak istiyorsanız yazmanız gereken ifade köşeli parantez içine alınmış "br" veya "p"dir. Tabi günümüzde bu ifadeleri bilmeden çeşitli programlar kullanarak da sayfalar oluşturabilirsiniz. Ister kendiniz yazın ister bir program aracığı ile sayfalarınızı oluşturun; sayfalarında bulunması gereken bu ifadeler bir organizasyon tarafından tanımlanmıştır. Bu organizasyonun sitesi "www.w3.org" olup internet dünyasının herkes tarafından kullanılacak şekilde yeni teknolojilerle gelişmesini amaçlar. Neyse konuyu toparlayalım; HTML şu an 4. versiyonu olan ve herkesin web sayfalarını herkese rahatça sunabilmesini amaçlanan ifadeler kümesidir.
Fakat ben size ne demiştim? (Lütfen 2. paragrafa bakın) Zamanla kavram ve anlam hazinemiz gelişiyor. Evet internet ve bilgisayarların zekası yok ama zaten onları biz insanlar geliştiriyoruz. Artık XML (Extensible Markup Language) denen bir teknoloji -ki kimilerine göre yanı zamanda dil- geliştirmiş ve internet dünyasına sunmuş olduk. (Kendimizi alkışlayalım. :) )
XML bir belgenin yapısını ve görünümünü tanımlamak için kullanılan uluslararası formatıdır.
XML text tabanlı markup (HTML gibi etiketlerin oluşturduğu dil) dildir.
XML bilginin yapısını tanımlamak için kullanılan bir teknolojidir.
XML bilgiyi tanımlayan ve web ortamında bilgi alış verişi için kullanılan standart bir biçimdir.
XML -daha sonraları geliştirilmiş olan- markup dillerini tanımlayan bir teknolojidir.
XML verinin yapılandırılması ve tanımlanması için kullanılan bir teknolojidir.
XML herhangi bir verinin biçimlenmesi,tanımlanması için kullanılan bir teknolojidir.
Esnekliği sayesinde XML, elektronik iş sistemleri, bankacılık, finans, sağlık, eğitim, ulaşım, otomotiv sektörleri gibi bir çok alanda,kısacası bilişim dünyasıyla ilgili olan her sektörde varlığını gün geçtikçe daha da hissettirmektedir.
Buraya kadar siz okuyucalarıma sayfaların çoğunlukla görsel tarafını ilgilendiren ve istemci bilgisayarlara aktarılan kısmı ile ilgili bilgiler verdim. Ama daha yazım bitmedi. Çünkü sunucu kısmında çalışan program ve teknolojiler hakkında söyleyeceklerim var. Kısaca:

ASP (Active Server Page)
Microsoft`tun geliştirmiş olduğu teknolojidir. En iyi çalıştığı ortam Microsoft işletim sistemleri (XP, Windows 2000, Windows 98...) olan ASP Linux`te de çalışabilmektedir. Nesne tabanlıdır. Bir asp sayfasını isterseniz Virtual Basic veya javascriptte hazırlayın. Böyle bir imkanınız var. Yakında -biraz sonra söz edeceğim- PHPscript ile hazırlanabilecektir.

JSP (Java Server Page)
Sun`ın geliştirmiş olduğu teknolojidir. JSP, java programlarının çalıştırılabildiği tüm platformlarda bu platformların sunucu olarak hizmet vermesi istendiğinde kullanılan teknolojidir. ASP gibi veri tabanları ile iletişim kurar program (özellikler java parogramları) çalıştırabileceğiniz programlama kodları içeren sayfalarıdır.

Coldfusion
ColdFusion "Allaire Corporation" tarafından geliştirilmiştir. Sunucu tarafında hazırlanmış sayfalarının HTML sayfası olarak istemciye sunulmasını sağlar. Coldfusion, Linux, Solaris ve Windows üzerinde çalışan web sunucularda çalıştırılabilen uygulamadır.

PHP (Personal Home Page)
Temelini, Rasmus Lerdorf`un kendi rutin işlemlerini yaptırdığı programa dayanır ve adını bu programdan alır. 1995 yılında nesne-tabanlı hale gelmiştir. PHP`in çalıştığı ortamlar Windows, Linux, MacOS olup doğal olarak her işletim istemi için farkı bileşenler içerir. Günümüzde PHP`in popüler olmasının en büyük nedeni Linux gibi "Açık Sistem Kuralları"`na tabi olmasıdır. Yani program içinde herhangi bir değişiklik yapabilirsiniz fakat bundan para kazanamaz ve yaptığınız değişikliği belirmek zorundasınız.

Şimdi ASP, Coldfusion, JSP, PHP ve bu tip teknolojilerin sahip oldukları ortak özellikleri belirteyim:
-Temelde Web Uygulama Sunucularıdır.
-Bir programlama dili ile oluşturulan sayfalardır. (Bazıları programlama dili, bazıları bir veya daha fazla programlama dili ile hazırlanabilen teknolojilerdir.)
-Bir veya daha fazla veritabanı teknolojileri ile rahatça iletişim kurarlar.
-Sunucu taraflıdırlar.
Son sözlerimi söylerken burada okuduğunuz teknolojilerin yerlerini zamanla daha iyilerine bıkaraktığını veya yeni alternatiflerinin çıktığını ve çıkacağını bilmeniz gerektiğini belirtmek istiyorum. Örneğin UDDI. Hakkında bilgi sahibi olmadığım için sadece açılımını yazıyorum. UDDI Universal Description, Discovery, and Integration

Yazımı okuduğunuz için teşekkür ederim.