PHP Sınıflar

PHP sınıflar kullanımı nesne tabanlı programlama için gereklidir. Nesne tabanlı programlama (Object Oriented Programming) gerçek hayattaki somut nesnelerin, yazılım dünyasında soyut varlıklarla temsil edilmesi şeklinde yapılır. İlk geliştirilen programlama dillerinde, kodlar alt alta yazılıp çalıştırılırdı. Kod satırları arttıkça karmakarışık bir hale gelirdi. Bu zorluğu aşmak için programlama dilleri nesne tabanlı programlamaya evrilmiştir. Aslında PHP dili bu evrime biraz geç katılmıştır.

Sınıf aslında bir tanımdır. Bir özellik yığını ve davranış yığını sunarak bu özellik ve metotlar gibi davranışlara topluca erişilebilmesini sağlar.
PHP, basit bir sınıf:

<?php
//bu kodları araba.php olarak kaydedin
class Araba
{
public $vites= ‘5 e attım’;
public function vitesTak() {
echo $this->vites;
}
}

var araba= new Araba();
araba.vitesTak();
//çalıştırısanız sonuç
//5 e attım
//şeklinde olacak
?>

Örnek sınıfta olduğu gibi, gerçek hayattaki arabayı, yazılım ortamında araba sınıfı olarak tanımlayabiliriz. Bu sınıfa arabanın rengi, motor gücü, modeli gibi verileri de ekleyebiliriz. Nesne tabanlı programa her şeyden önce bir düşünme sistematiğidir. Size yazılım geliştirmede kolaylıkla düşünme yetisi sağlar. Eğer büyük proje yapacaksınız mutlaka nesne tabanlı programlamayı öğrenmeniz gerekir.



Nesne;

Sınıf ile nesne arasındaki ilişkiyi şöyle söyleyebiliriz. Nesne ait olduğu sınıfın bir örneğidir (instance) . Yukardaki araba sınıfında, Araba sınıfının tanımladık, bir Araba sınıfını “new ” ile çağırdığımız anda nesne oluyor.

UML;

UML (Unified Modelling Language), nesne tabanlı programlamada görselleştirme için kullanılan bir modelleme dilidir. UML diyagramları, sınıflar ve nesneler için çeşitli betimlemeler sunar. Bu betimlemeler grafik üzerindendir. Doğrudan metin girdisi de azda olsa mevcuttur. UML diyagramlarında sınıf şeması üç bölümlü bir dikdörtgenden oluşur; üst bölümde sınıfın adını, ortadaki bölüm özellikleri, son bölümde metotlar gösterilir.

UML şemaları php sınıflarla çalışırken işinizi en önemlesi düşünmenizi kolaylaştıracaktır. Bir projeye başlamadan önce mutlaka kağıdı kalemi elinize alıp karalayın. Nesne tabanlı programlama çok geniş bir konu, şimdilik bu kadarla kalsın.

Etiketler: , , , ,

This site uses Akismet to reduce spam. Learn how your comment data is processed.