Wordpress WP-Syntax Eklentisi PHP Design Pattern - Singleton Pattern - Yalnızlık Tasarım Şablonun
Sep 07

Php çalışma ortamları nedir?
Programcılık ile ilgili en sevdiğim deyim “En iyi programcı en tembel olan programcıdır.” dır. Burada ki tembellikten kast edilen aynı kodu iki defa yazmama becerisidir. Programcılar kodu bir defa yazarlar ve ihtiyaç duyduklarında oradan kullanırlar. Pascal programcılarının unitleri , C programcılarının libraryleri bunlara güzel örnek teşkil eder. C# ve JAVA’yı zaten çalışma ortamsız düşünemeyiz.

Php’nin gelişimi ile birlikte php çalışma ortamları ortaya çıkmıştır. Bunların şüphesiz en önemlisi PEAR‘dır. PHP5′in OOP’yi büyük ölçüde desteklemesi ile bilirlite sürdürülebilir, 10 15 kişilik proje ekibi ile çalışma ortamları yazmak çok kolaylaştı. PHP programcılarıda kolları sıvıyarak ortak çalışma ortamları oluşturmaya başladılar. Onlarca gönüllünün yazdığı, yüzelerce gönüllünün test ettiği ve binlercesinin kullandığı php çalışma ortamları böyle oluşmaya başladı.

Php çalışma ortamları neden gereklidir?

PHP’nin temel sorunu HTML kodlarının içene yazılması nedeni ile sürdürülebilir uygulamalar yapmaya elverişli olmamasıdır. Bin satırlık statik bir internet sitesinde bu pek sorun olmazken , onbin satırlık bir internet uygulamasında kodlar birbirine girer. Bir ekip ile çalışmak nerede ise imkansız hale gelir. Bu olgu spagetti kod yazmak olarakta bilinir. O yüzdendir ki beş php programcısının bir araya gelerek ortak bir proje yaptıkları çok azdır. Çok büyük emek ve sabır ister.

Php çalışma ortamları bize bu sorunları aşmamızı sağlar. Programcıları belli belli bir yapıya ve kod standardına zorlayarak ortak işler yapmamızı sağlar. İster mevcut bir php çalışma ortamı kullanın, isterseniz kendinizinkisini yazın sürdürülebilir projeler için belli standartlara bağlı kalmak zorundasınız.

Php çalışma ortamları bize ne sağlar?
En iyi php çalışma ortamları aşağıdaki özelliklerden belli başlılarını size sunar.

  • PHP4 - Php4 desteği
  • PHP5 - Php5 desteği
  • MVC - 3 katlı mimari (Model - View - Controller)
  • Multiple DB’s - (Çoklu veritabanı desteği) Siz kodunuzu bir standartta yazarsanız. Veritabanı değiştirdiğinizde config dosyanızda MySQL yerine MsSOL yazmanız programınızın çalışması için yeterlidir.
  • ORM - (Object-Record Mapper) Daha çok aktif kayıt (Active Record) olarak bilinir. Bu veritabının bir haritasının Php ile çıkartılması yolu ile CRUD işlemlerinin çok hızlı bir şekilde yapılmasını sağlamaktadır.
  • Veritabanı Nesneleri
  • Template - İçerik ile stili birbirinden ayırmanızı sağlar. Template Engine olarak bilinirler.
  • Caching - Sayfanızı cache yaparak daha hızlı açılmasını sağlar
  • Validation - Verilerinizi doğrulama yapar
  • Ajax - Ajax Desteği
  • Auth Module - Üyelik Rol desteği
  • Moduls - İçlerinde kullanışlı modüller vardır. Örneğin RSS, PDF, Email vs. vs.

Belli başlı php çalışma ortamları…

  • Zend Framework
  • Zend Framework PHP’nin geliştiricileri tarafından tasarlanmıştır.  Her yönüyle mükemmel bir PHP çalışma ortamı sunmaktadır. Tek kötü yanı anlaşılarbilir bir dokümantasyonu yoktur.  Zend Framework ile ilgili kaynaklarda oldukça kısıtlıdır. Pek yaygın olmamasına rağmen bence en iyi php çalışma ortamıdır. Başka bir artısı ile Eclipse PDT projesini geliştiren zend ekibi Zend Neon adında yeni bir IDE yapmıştır.  Bu IDE bütünleşik çalışır.
  • CodeIgniter
  • Codeigniter en yaygın php çalışma ortamıdır. Güçlü yanı çabuk kavranabilmesidir. Çok anlaşılır bir kullanıcı klavuzu vardır.  Ayrıca kullanıcılarının aktif olarak kullandığı form ve wiki vardır. En çok kaynağın bulunduğu php frameworkü diyebiliriz. Ancak codeigniterı tam destekleyen bir IDE daha görmedim. Eclipse veya Zend Studio maalesef kodları otomatik tamamlayamamaktadır.
  • CakePHP
  • Symfony Project
  • Prado

Diğer üç frameworkü hiç kullanmadığım için yorum yapmayı uygun bulmuyorum.

Leave a Reply