Hoşgeldin Misafir

Neden PHP?

LikeForYou

26 Eyl 2017
728 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
2000 senesinde perl ile cgi, internet uygulamacılığı ile tanışmamı sağladı. PHP zaman içinde arzuların artması ve yazım biçiminin aşina olduğum ortama daha yakın olması kaynaklısı ile beni çekim alanına aldı ve geçen 5 sene içinde de beni bu alandan uzaklaşmamam için yeteri kadar tatmin etti. Yakın zamanda hem IDE'sinin sağladıkları, hem de platformun basitçerı 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 yalnız önce, internet programları 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 uygulamacıları daha çok çeker. Bu açıdan yazım biçiminin ve temel dil özelliklerinin C'ye benzemesi benim için PHPyi daha cazip kılıyordu.

Hızlı uygulama geliştirme imkânı ve kurulum:
Öncelikle uygulama geliştirme ortamı olarak Zend Studio, uygulamacıya planlama hariç tüm aşamalarda basitlık sağlıyor. Uygulama geliştiriken veritabanı yönetimi vasıtası ile tek bir ide ile geliştirdiğiniz programa tam hakimiyeti Zend Studio vasıtası ile edinebiliyorsunuz. Yazılan kodun debug edilmesi ve çalıştığınız sayfa üzerinde tek tek yazılan her fonksiyonun performans analizini doğrudan tarayıcı üzerinden yapabilme imkânı ç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 programınızı çalınma tehlikesi olmadan gönül rahatlığı ile koşturabilmenizi sağlıyor. Kurulumdan sonra ise yine Zend ürünleri size olağanüstü üstünlüklar sağlıyor. Bunlara daha sonra uzun uzun değineceğim.

Kolay öğrenilmesi:
Php herhangi bir internet dili ile, belirli bir süre deneyimi olan her uygulamacı için maksimum bir hafta içinde öğrenilebilecek bir dil. Biliyorum kulağa iddalı geliyor ancak doğru. Bir dilin basit öğrenilebilir olması büyük bir üstünlük. Biz Techinox şeklinde deha deneyimlilerin alttan gelenleri eğitimi vasıtası ile 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 faydalı olmasını sağlıyoruz. Bu anlamda Php temel uygulama geliştirme ortamımız olduğu için daha hızlıca 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 unsurlardan yalnızca 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 ilaveten lisanslandırma ücretleri talep etmiyorlar bu anlamda uygulama geliştirdiğiniz kişilere daha üstünlüklı teklifler ile gidebilmenizi sağlıyor. Özellikle Türkiye gibi bir ortamda bence bu çok ciddi bir üstünlük.

Opsiyonellik:
Tabii ki gerektiği zaman profesyonel çözümlerle müşterinin marka arzularıni tatmin etmek mümkün. PHP size çoğu profesyonel veritabanı (Oracle, DB2 vs.) ile birlikte ç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 yalnızca 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 [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] serverları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:
publish********.php


Kolay Kurulum:
Açıkçası kendimi bir Windows uygulaması kuruyor gibi hissetmemi sağladı. Zira bir kaç adım dışında yalnızca enter tuşu ile kurulum tamamlandı. Tabii yönetim serverına olduğu gibi klon serverların hepsine kurulum çok basit oldu. Kurulum sırasında suncuya kurulu olan php sürümündan tutun, konfigürasyon için kullandığınız dosyalara kadar herşey "kurulum yardımcıı" tarafından bulunuyor ve size yalnızca onaylamak kalıyor. Eğer sistemde eksik herhangi bir modül varsa "yardımcı" sizin için onu da kuruyor ve size yalnızca arkanıza ykatiyennıp kafein tüketmek kalıyor.

Merkezi Monitörleme imkânı:
Uygulamanız içinde gerçekleşen hatalardan, uygulama performansını yönetmenizi sağlayacak araçlara herşeyi tek bir internet kullanıcı arayüzünden yönetmek mümkün. Üstelik ne kadar klon servernuz olursa olsun (mesela bir backup bir de test servernuz var gibi düşünün) hepsi tek internet kullanıcı arayüzünden yönetilebiliyor. Bu anlamda PHP konfigürasyonuna kadar, serverların eşzamanlılık (senkronizasyon)unun yine aynı kullanıcı arayüzüden sağlanması
Kritik Durum Müdahale İmkanı:
Zend Platform vasıtası ile uygulmada gerçekleşen sistem kaynaklı ya da bağımsız tüm 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 prosedür sırasında bir hata oluştu hemen size bir e-posta geliyor ve durumu tüm detayları ile anlatıyor. Bu anlamda müşteriden geri bildirim gelmeden Hatayı daha önceden biliyorsunuz ve müdahale edebiliyorsunuz.

Aslında daha çoğu kazanımdan bahsetmek mümkün ancak sizi sıkmamak için şimdi modüllerden bahsetmek istiyorum.

Zend Performance Suite
Dynamic 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 olağanüstü 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 vasıtası ile kodun derlenmesi ve bu anlamda yorumlanma sırasında kaybolan sürenin kısaltılması mümkün. Bu bilhassa 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ı imkânı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 vasıtası ile yazılan kodun anlık 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 dilerseniz e-posta ile imkânları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 hakkında 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 birlikte kullanıyorsanız bu bebek tam size göre. Zira kendi başınıza son derece sancılı kurulum anında saçınızı başınızı yolmanıza yol açacak çoğu faktörü yok ediyor ve size yalnızca uygulama geliştirmek kalıyor. Uygulama geliştiriken ise sağladığı ekstra araçlar vasıtası ile PHP ve Java'yı daha rahat beraber kullanımı sağlıyor.

Sonuç olarak bu hafta sonu yapılan kurulum vasıtası ile 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.