PHP her türlü yazılım şekli için çok uygun bir dildir html etiketleri arasında php taglarını açarak dilediğiniz PHP kodunu yazarak sunucuda anında çalıştırabilirsiniz .
PHP diğer dillerden ayıran en önemli ve en sevilen özelliği esnek bir yapısının olmasıdır illa bir class veya fonksiyon kullanmak zorunda değilsiniz, orta düzeyde bildiğim JAVA dan beni soğutan PHP yi en çok sevdiren özelliği budur . JAVA ile yazılım geliştirirken ana method alt method alt sınıflar gibi oldukça karmaşık bir yapısı vardır.
OOP Nedir ?
Bir projenin tamamen sınıf – fonksiyon yapısı ile hazırlanması işlemidir.
Peki biz PHP ile sınıflandırma işlemine neden ihtiyaç duyarız madem dilediğimiz gibi yazabiliyoruz işleri neden karmaşıklaştırıyoruz ?
Eğer geliştirdiğiniz yazılımın uzun soluklu olmasını istiyorsanız yada bir ekip olarak geliştiriyorsanız bir kaç altın kural vardır bunlardan bahsedecek olursak ;
- Yazılımınız açık kaynak olacaksa mutlaka Laravel gibi Frameworkler kullanın çünkü yazdığınız kodun herkes tarafından anlaşılabilir olması gerekir.
- Eğer bir şirket için geliştiriyorsanız yada bir ekip olarak gerçekleştiriyorsanız genel geçer framework kullanmanıza gerek yok hatta bu yapıyı sizin oluşturmanız ve tamamen sizin tarafınızdan yapılıyor olması daha sağlıklıdır, yani OOP si sizin şirketinize ait olmalıdır.
- Eğer framework ü siz geliştiriyorsanız değişkenlerin ve fonksiyon isimlerinin gerçekleştirdiği işlemi anlatıyor olmalıdır yani bir ifade içindeki A harflerinin sayısını arayan bir fonksiyon yazıyorsanız fonksiyonun adı a() değil aHarfleriniAra() gibi olmalıdır böylece yazılımınızı inceleyen birisi kolayca anlayabilir hatta sadece a() yazarsanız ileriki süreçte incelediğinizde bu dizilimi siz bile anlamayabilirsiniz.
Genel geçer kurallardan bahsettikten sonra neden OOP ihtiyaç duyarız peki ?
- OOP ile geliştirdiğimiz projemizde daha kolay güncelleme yapabilirsiniz
- BUG araması ve düzenlemesi daha kolaydır
- Tek bir kod yazarak projenin bir çok yerinde bu kodları kullanabiliriz
- HTML ve PHP kodlarını birbirinden ayırabiliriz ve böylece tasarımsal değişikler daha kolay yapılabilir ve tasarımcı işlerini daha kolay hale getirebiliriz.
- Projenin geliştirilme esnasında anlaşılabilirliği artacağı için daha hızlı uygulama geliştirilebilecektir.