Geçmişe kısa
bir bakış
Açılımı Personal Home Page, olan PHP, ilk kez Rasmus Lerdorf
tarafından, web sayfalarını ziyaret edenleri izlemek amacıyla
bir dizi Perl Script (betik) kullanılarak geliştirilmişti. İnsanlar
kısa zamanda bununla ilgilenmeye ve bu konuyla ilgili sorular
sormaya başladaklarında, Rasmus kararını verdi ve bir script
motoru oluşturdu. Ayrıca formlara da destek verdi ve böylece
PHP/F1'i biçimlendirmiş oldu. Adını duyurdukça bir gurup yazılım
geliştirmecinin dikkatini çekti ve böylece bir API oluşturuldu
ve PHP3 ortaya çıktı. Daha sonraları yeniden ele alınması gerekti
ve Zend motoru PHP4'ü yaratmış oldu. Artık PHP önünde pek engel
bulunmuyordu, PHP Hypertext Processor fetihlere çıkmaya hazırdı.
Bir script motorunda neler var?
PHP gibi bir script motorunun verimliliğini en yüksek düzeye
çıkartan 4 temel etmen bulunuyor. Bunlar; Hız, İstikrar, Güvenlik
ve Basitlik olarak sayılabilir.
Hız - Uygulama hızı önemlidir tabi ki, ancak bununla birlikte
bilgisayarın diğer fonksyonları yavaşlamamalı. Bu nedenle
bir sürü sistem kaynağına gerek duymamalı. PHP, özellikle
Unix tabanında çalışıyorsa, diğer yazılımlarla iyi uyum sağlamaktadır,
az yer kaplar ve bir Apache modülü olarak çalıştırıldığında
hemen kullanıma geçer.
İstikrar - Bir kaç bin sayfalık bir işte, sistem çöküyorsa
eğer hızın pek bir anlamı kalmayacaktır. Her uygulamanın hata
sorunu vardır. Ancak bir gurup yazılım geliştiricilerinden
oluşmuş bir topluluğa sahip bir uygulama söz konusuysa, işler
biraz değişir, ve böcek (bug) olarak tabir edilen hatalar
saklanacak pek bir delik bulamaz. Bunun yanısıra PHP kendi
işletim sistemi kaynaklarını kullanıyor, ve veri transferi
ve denetiminde çok başarılı ve kompleks bir metod getiriyor.
Güvenlik - Sistemin bazı saldırgan tavırlı kullanıcılara karşı
korunması zaruridir. PHP istenilen düzeyde .ini dosyaları
olarak kurulabilen farklı güvenlik düzeylerine sahiptir.
Basitlik - Programcıların uygulama üzerinde hızlı bir biçimde
üretime geçmeleri gerekmektedir. PHP üzerinde, HTML kodlamacıları
hiç zorlanmadan web sayfalarını yazmaya başlayabilir. C dilinde
deneyim sahibi olan programcılar, hatta javascript kullananlar
kısa bir sürede hızlanabilirler. Ayrıca bağlanabilirlik de
PHP'nin artılarından biridir. Modül uzantılar sistemi çeşitli
kütüphanelerle (veritabanları) kolayca arabirim oluşturabiliyor.
Dahası yeni uzantılar eklemek çok kolay.
PHP'nin diğer avantajları
PHP hemen hemen
her platformda çalışabiliyor. PHP aynı kod temelini kullandığı
için, UNIX, Windows (95/98/NT/2000) ve Mac OS dahil olmak
üzere 25 platformda derlenip kurulabilir. Kodlar aynı olduğundan
script'ler platformdan bağımsız olarak çalışacaktır.
PHP, uzantı alabilmektedir.
Uygulamanın içerisinde yer alan çekirdek motor (Zend tarafında
yazıldı), bir dizi asal kod modüllerinden ve kod uzantılarından
oluşmaktadır. Bu nedenle programcılara PHP uzantıları yaratarak
bazı özel işlemlerini yapabilmeleri için iki seçenek sunuluyor;
ya uzantı modüllerini yazarak uygulanabilen bir derleme yapmak,
ya da PHP'nin dinamik yükleme mekanizmasıyla yüklenebilecek
uygulanabilir uzatmalar yaratmak.
PHP pek çok HTTP
server arayüzü barındırıyor. PHP Apache'ye, AOL server'a,
Roxen ve THTTPD'ye doğrudan yüklenebiliyor. Alternatif olarak
CGI modülü olarak da kullanılabilir.
PHP pek çok veritabanı
arayüzü bulunduruyor. PHP, MySQL, MS SQL, Oracle, Informix,
PostgreSQL ve diğerleriyle doğrudan çalışabiliyor. Bunlar
ikili sayı düzenindeki arayüzlerden oluşmaktadır ve bu çözümler
için veritabanının desteklenmediği yerlerde ODBC desteği sağlıyor.
Bir PHP kullanıcısı
herhangi bir kütüphane için arayüz oluşturmakta zorluk çekmez.
Pek çok kullanıcı bu yolu seçmiş, grafik rutinleri, PDF dosyaları,
Flash Movie'leri, Cybercash cetvelleri, XML, IMAP, POP ve
diğerleriyle ilgili modüller bulabilmiştir.
PEAR, PHP'nin
uzantısı ve Add-on deposudur. Pear, Perl için geliştirilen
CPAN'e benzemektedir. Halen başlangıç aşamasında olmasına
rağmen PEAR, PHP'nin kurulumuyla birlikte gelecek bir dizi
PHP script'ini kullanıma sunmaktadır.
PHP bir açık kod
uygulamasıdır ve pek çok profesyonel kullanıcı için çok şey
ifade etmektedir. Basitçe açıklamaya çalışırsak PHP kullanıcıyı,
çalışmayan uygulamalar için üretici firmanın keyfini beklemekten,
her yıl sistemini belli paralar ödeyerek güncelleme zorunluluğundan
kurtarmaktadır.
Eksik yönleri neler
Hata denetimi Cold Fusion ya da ASP uıygulamasındaki kadar
etkili değil. IDE ve debugger uygulaması bulunmuyor. IDE'nin
pek çok kullanıcı için fazla bir önemi yok. Ancak debugger
Zend tarafından yakın gelecekte geliştirilecek.
PHP ve diğer script dillerini ne zaman kullanacaksınız
Eğer bir UNIX ya da Linux platformu üzerinde iş görüyorsanız,
Perl ve PHP, her ikisi de çalışmalarınız için ideal. Her ikisi
de başlangıç aşamasında script yazmayı kolaylaştırıyor. Windows
platformundaysa ASP ve Cold Fusion egemenliği bulunuyor. Aslında
buradaki tercih teknik olmasından çok politik sayılır. ASP
ile IIS mühtemelen PHP ile IIS'den daha iyi. Ancak tamamen
teknik bir altyapıda PHP, WindowsNT üzerinde, diğer platformlardaki
performansına ulaşmakta.
Sonuç Olarak
Sıklıkla olduğu gibi PHP'nin geliştirilimi de neredeyse
tesadüf eseri olmuştur. Bir kullanıcının script yazma denemeleri,
daha sonra pek çok programcının gereksinimlerini karşılayacak,
hızlı, kullanışlı ve kolay uygulanabilen bir script'leme
diline dönüştü. Son üç yılk içerisinde kaydettiği gelişmelerle
PHP server dünyasında ciddi bir rol almış durumda. Apache,
MySQL, PHP üçlüsü Internet dünyasında vazgeçilmez bir paket
haline geldi. Bu paket hızlı, dinamik ve veri tabanlı site
ve portal inşaatında bir numara olmaya aday...
|