Reklam

Reklamlar

8 Haziran 2010 Salı

Klasik ama: Neden PHP?

2000 senesinde perl ile cgi, web programcılığı ile tanışmamı sağladı. PHP zamanla isteklerin artması ve yazım şeklinin aşina olduğum ortama daha yakın olması dolayısı ile beni çekim alanına aldı ve geçen 5 sene içinde de beni bu alandan uzaklaşmamam için yeterince tatmin etti. Yakın zamanda hem IDE'sinin sağladıkları, hem de platformun kolaylıkları ve cazibesi yüzünden Asp.NET'e göz kırpmış olsam da bu hafta sonu yaşadığım tecrübe PHP'ye olan sevgimi tazeledi.
Tabii ki hafta sonu olanları anlatacağım ancak önce, web uygulamaları geliştirirken neden PHP kullandığıma daha derinlemesine değinmek istiyorum:
Kişisel nedenler:
Birinci sırada syntax yer alıyor. Dediğim gibi aşina olduğumuz ortamlar biz programcıları daha fazla çeker. Bu açıdan yazım şeklinin ve temel dil özelliklerinin C'ye benzemesi benim için PHPyi daha cazip kılıyordu.
Hızlı uygulama geliştirme imkanı ve kurulum:Öncelikle uygulama geliştirme ortamı olarak Zend Studio, programcıya planlama hariç bütün aşamalarda kolaylık sağlıyor. Uygulama geliştiriken veritabanı yönetimi sayesinde tek bir ide ile geliştirdiğiniz uygulamaya tam hakimiyeti Zend Studio sayesinde edinebiliyorsunuz. Yazılan kodun debug edilmesi ve çalıştığınız sayfa üzerinde ayrı ayrı yazılan her fonksiyonun performans analizini direkt olarak tarayıcı üzerinden yapabilme imkanı çok leziz. Kurulum sırasında ise Zend Encoder'ın sağladıkları her uygulama geliştiriciye lazım. Zira yazdığınız kodun şifrelenerek güvenliğinin sağlaması size ait olmayan platformlarda uygulamanızı çalınma tehlikesi olmadan gönül rahatlığı ile koşturabilmenizi sağlıyor. Kurulumdan sonra ise yine Zend ürünleri size inanılmaz avantajlar sağlıyor. Bunlara daha sonra uzun uzun değineceğim.
Kolay öğrenilmesi:Php herhangi bir web dili ile, belirli bir süre tecrübesi olan her programcı için maksimum bir hafta içinde öğrenilebilecek bir dil. Biliyorum kulağa iddalı geliyor ama doğru. Bir dilin kolay öğrenilebilir olması büyük bir avantaj. Biz Techinox olarak daha tecrübelilerin alttan gelenleri eğitimi sayesinde hem sektöre kalifiye elemanlar yetiştirmenin hazzını yaşıyoruz hem de bünyemizdeki çalışanların kendilerine, takım arkadaşlarına ve bize maksimım yararlı olmasını sağlıyoruz. Bu anlamda Php temel uygulama geliştirme ortamımız olduğu için daha kısa sürede maksimum işgücünü devreye alabiliyoruz.
Performans:Daha az kaynak ile yüksek performans sağlaması PHP'nin büyük projelerde kullanılabilmesi için sayılabilecek nedenlerden sadece biri. Tabii ki bu anlamda hemen diğer iki silahşör olan MySQL ve Apache'nin önemini de unutmamak gerekiyor.
Fiyat:
Bu üç silahşör de (PHP, MySQL ve Apache)açık kaynak kodlu olduğu için sizden ayrıca lisanslandırma ücretleri talep etmiyorlar bu anlamda uygulama geliştirdiğiniz kişilere daha avantajlı teklifler ile gidebilmenizi sağlıyor. Özellikle Türkiye gibi bir ortamda bence bu çok ciddi bir avantaj.
Opsiyonellik:Tabii ki gerektiği zaman profesyonel çözümlerle müşterinin marka isteklerini tatmin etmek mümkün. PHP size birçok profesyonel veritabanı (Oracle, DB2 vs.) ile beraber çalışma sağlayabildiği gibi Zend'in birazdan değineceğim profesyonel çözümleri ile de müşterinizin Açık kaynak kodlu ortama olan direnişini kırmanızı sağlıyor. Burada yine uygulama geliştirdiğiniz ortamında Türkiye olması ön plana çıkıyor. Şu ana kadar genel olarak iki tip müşteri ile aktif olarak çalışıyoruz. Birincisi fiyatın minimize olmasını isteyenler, ki bunlara sadece uygulama ve barındırma maliyetleri ile hizmet vermek üç silahşörümüzle gayet mümkün. İkincisi ise marka ile güvenin sağlanacağını düşünen ve bunda da kısmen haklı olan kurumsal müşteriler. Onlara da Zendin profesyonel çözümleri ve farklı veritabanı seçenekleri ile ulaşmak mümkün.
Şimdi gelelim bu hafta sonu olanlara. Müşterilerimizden www.pazaryerim.com sunucularını Zend Platformlandırdık. Zend Platform sağladıkları ile beni bir kere daha PHPnin çekim alanında kalmaya ikna etti. Gelelim Zend Platformun
sağladıklarına:
Kolay Kurulum:
Açıkçası kendimi bir windows uygulaması kuruyor gibi hissetmemi sağladı. Zira bir kaç adım dışında sadece enter tuşu ile kurulum tamamlandı. Tabii yönetim sunucusuna olduğu gibi klon sunucuların hepsine kurulum çok kolay oldu. Kurulum sırasında suncuya kurulu olan php versiyonundan tutun, konfigürasyon için kullandığınız dosyalara kadar herşey "kurulum sihirbazı" tarafından bulunuyor ve size sadece onaylamak kalıyor. Eğer sistemde eksik herhangi bir modül varsa "sihirbaz" sizin için onu da kuruyor ve size sadece arkanıza yaslanıp kafein tüketmek kalıyor.
Merkezi Monitörleme imkanı:
Uygulamanız içinde gerçekleşen hatalardan, uygulama performansını yönetmenizi sağlayacak araçlara herşeyi tek bir web arayüzünden yönetmek mümkün. Üstelik ne kadar klon sunucunuz olursa olsun (mesela bir backup bir de test sunucunuz var gibi düşünün) hepsi tek web arayüzünden yönetilebiliyor. Bu anlamda PHP konfigürasyonuna kadar, sunucuların senkronizasyonunun yine aynı arayüzden sağlanması da mümkün.
Kritik Durum Müdahale İmkanı:
Zend Platform sayesinde uygulmada gerçekleşen sistem kaynaklı veya bağımsız bütün hataları mönitörlemek mümkün. Sisteme fonksiyon bazlı olarak gerçekleşen hataları haber vermesini söyleyebiliyorsunuz. Mesela bir ödeme sayfanız var ve işlem sırasında bir hata oluştu hemen size bir e-posta geliyor ve durumu bütün ayrıntıları ile anlatıyor. Bu anlamda müşteriden geri bildirim gelmeden hatayı önceden biliyorsunuz ve müdahale edebiliyorsunuz.
Aslında daha birçok kazanımdan bahsetmek mümkün ama sizi sıkmamak için şimdi modüllerden bahsetmek istiyorum.
Zend Performance SuiteDynamic Content Caching, Code Acceleration ve Compression ilk göze çarpan özellikler. Diyelim ki içeriği süreli değişen ve bir çok datayı aynı anda on the fly işlediğiniz bir sayfanız var. Bu noktada Zend Platforma sayfayı belirli aralıklarda önbelleğe almasını söylüyorsunuz ve bir anda uygulama inanılmaz hızlanıyor. (Burada 140 - 160 kata kadar performans kazanımından bahsediyoruz. Aslında gözümle görmesem böyle bir kazanıma ben de inanmazdım.) Code Accelerator sayesinde kodun derlenmesi ve bu anlamda yorumlanma sırasında kaybedilen sürenin kısaltılması mümkün. Bu özellikle de 10 kata kadar performans kazanımı mümkün. Code Compression ise size gzip formatında tarayıcıya gönderilen verinin sıkıştırılması imkanını sağlıyor. Bu da hem trafiği azaltıyor hem de performansın son kullanıcıya yansımasını sağlıyor.
PHP Intelligence
Bu özellik sayesinde yazılan kodun gerçek zamanlı analizinin yapılması mümkün. Sayfa üzerinde tanımlamalar yaparak yazılan kodun nasıl davranması gerektiğini sisteme anlatmak mümkün bu anlamda sistemdeki buglardan yavaşmalara her gelişmeyi hemen o anda isterseniz mail ile imkanlarınız el veriyorsa sms ile haberdar olmanız mümkün. Sistemin Zend Studio ile entegre çalışabiliyor olması ise müdehale hızınızı arttırıyor. Bunun dışında bilinen hatalar ile ilgili son kullanıcının sistemin ürettiği hataları görmemesini sağlamak da mümkün.
PHP / JAVA entegration Bridge
Eğer Php ile J2EE teknolojilerini beraber kullanıyorsanız bu bebek tam size göre. Zira kendi başınıza oldukça sancılı kurulum sırasında saçınızı başınızı yolmanıza yol açacak birçok etkeni yok ediyor ve size sadece uygulama geliştirmek kalıyor. Uygulama geliştiriken ise sağladığı ekstra araçlar sayesinde PHP ve Java'yı daha rahat birlikte kullanımı sağlıyor.
Sonuç olarak bu hafta sonu yapılan kurulum sayesinde bir kere daha PHP ile uygulama geliştirdiğim için mutlu oldum. Kendimce size neden PHP kullandığımı anlatmaya çalıştığım bu yazıma son verirken, bir sonraki yazımda da PHP5 tecrübelerimizden bahsedeceğimi umuyorum.
Dipnot
Bu yazı 8 Haziran 2010 Salı günü yazılmıştır. Bulunduğu kategori : ,,,. Yazdığım yazıları RSS 2.0 sistemini kullanarak takip edebilir, dilerseniz yorum yapabilirsiniz. Unutmadan, Bu yazı sizler tarafından tam tamına defa okunmuştur.

Hiç yorum yok:

Yorum Gönder

Sitemizi ziyaret ettiğiniz için teşekkür ederiz


Php Dersleri

ebook library