• Şuradasınız
  • Anasayfa
  • PHP
  • PHP : Nesneye Yönelik Programlama

PHP : Nesneye Yönelik Programlama

Nesneye yönelik programlama, modern bir programlama paradigmasıdır. Klasik, bir başka deyişle prosedürel programlamadan farklı olarak bir takım yeni programlama yapıları / olanakları içerir. Bu farklılık ve yenilikler, prosedürel programlamanın yazılım sorunlarına artık çözüm üretememesinden veya çözüm üretse bile maliyetli, güvensiz, vs. olmasından kaynaklanmaktadır.

Hemen hemen tüm diller nesneye yönelik programlama yapmaya imkan verir. PHP, nesne yönelik programlamaya imkan veren dillerden bir tanesidir. Bununla beraber salt nesneye yönelik programlama yapmak için kullanılan, Java gibi programlama dilleri de mevcuttur.

Benim nesneye yönelik programlamaya giriş yaptığım dil C++ idi. Yani bir başka deyişle, masaüstü programlama idi. Fakat artık her türlü yazılımda, ister web tabanlı olsun, ister mobil olsun nesneye yönelik programlama kullanılmaktadır. Bu sebeple PHP ile web tabanlı yazılımlar geliştirirken de nesneye yönelik programlamayı kullanmak avantaj sağlamaktadır. Hatta bu bir avantajdan ziyade,  artık zorunluluk olma yolunda ilerlemektedir.

Nesneye yönelik programlama paradigmasının getirdiği yeniliklerden birkaçı ve en önemlileri şu şeklide sıralanabilir;

  • Sınıf ve nesne kavramları
  • Sarmalama
  • Kalıtım – Sınıf türetme
  • Çok biçimlilik – Soyutlama
  • Nesne arayüzleri
  • Aşırı yükleme

Belki de bu cümleyi yazının başlarında kurmalıydım fakat, nesneye yönelik programlama oldukça karmaşık bir yapıya sahiptir. Bu karmaşıklık belli başlı sorunları beraberinde getirmektedir. Tam bu noktada devreye “MVC” girer.

Yazılan kodun daha derli toplu olması, daha standart olması, daha güvenli olması veya daha esnek olması gibi sebeplerden dolayı MVC denen programlama mimarisi kullanılır.

MVC (model-view-controller), 3 katmandan oluşur ve katmanlar arasında veri akışını sağlar. Daha detaylı bilgiyi başka bir yazıda not edebilirim. Şu aşamada, nesneye yönelik programlamayı yeni öğrenen biri için çok da gerekli birşey değildir.

Sonuç olarak nesneye yönelik programlamadaki asıl amaç profesyonel bir kod düzeni ile güvenliği sağlam uygulamalar geliştirmektir. Bu doğrultuda MVC mimarisini kullanmak avantaj sağlar.

Kendiniz MVC mimarisini ve nesneye yönelik programlamayı kullanarak projeler geliştirebilirsiniz. Fakat bir de; MVC mimarisini, kendi kütüphanelerini ve kendi yardımcı fonksiyonlarını içeren, daha kolay kod yazmayı sağlayan, güvenli, esnek projeler geliştirmeyi sağlayan, hazır ve ücretli/ücretsiz kod geliştirme ortamları, yani “framework“ler bulunmaktadır.

Bildiğim kadarıyla şirketlerin birçoğu ya hazır frameworkleri kullanmaktalar ya da kendi yazdıkları frameworkleri kullanmaktalar.

Zend, CodeIgniter ya da Symfony gibi hazır frameworkleri kullanabilir olmak günümüzde PHP alanında gerçekten de iyi bir noktada olmak demektir.

Benzer Yazılar

Yorumlar

Yorum Yazın

Su elementleri kullanabilirsiniz : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Arama
RSS
Beni yukari isinla