Php Oop Dersleri 1

Merhaba arkadaşlar,
Php oop derslerine başlamadan önce bilmemiz gerekenler nelerdir, nedir bu oop dedikleri gibi kısımları açıklayarak php oop derslerine bir giriş yapalım. Haydi bismillah 🙂

OOP Object Oriented Programming kelimelerinin baş harflerinden oluşan bir programlama teknolojisidir. Türkçe manasıyla söyleyecek olursak Nesne Tabanlı Programlamadır. Oop teknolojisi kullanılan programlama dillerine en güzel örnek Visual Basic ve JAVA’dır. Oop teknolojisi kullanılan programlama dilleri tabi ki bu iki güzel örneğimiz ile sınırlı değil. Örneğin: Objective-C, C#, C++, Python ve  tabiki PHP 🙂

Eğer yukarıdaki dillerden herhangi birini biliyorsanız Php ile nesne tabanlı programlama mimarisine aşina olmanız çok kolay olacaktır. Php nesne tabanlı programlama (oop) mimarisine tam olarak PHP 5 ile geçmiştir. PHP4 de obje (nesne) yapısı vardı ancak ihtiyaçları pek karşılamıyor ve modern yapıya pek ayak uyduramıyordu. Ancak PHP5 ile gerçek manada bir oop mimarisi php diline eklendi.

Php oop mimarisini kullanarak daha profesyonel, daha esnek ve daha geliştirilebilir projeler oluşturabiliriz. Günümüzde artık tüm web teknolojilerinde oop mimarisi kullanılıyor. Profesyonel olarak oluşturulan projeler bile oop mimarisine dönüştürüldü. Sizin de bugünden itibaren oop mimarisine geçmemeniz için hiç bir sebep yok. Oop mimarisinin sizi cezbedeceğini düşündüğüm bir kaç örnek vereyim.

Örneğin basit bir blog scripti yazdınız. Burada blog yazılarınızı yayınlıyorsunuz. Scriptinize yorum özelliği gibi bir kaç tane de özellik eklediniz. Projeniz bitti ve arşive attınız. Daha sonra farklı bir proje için yine yazı ekleyip çıkarabileceğiniz daha ufak bir blog modülüne ihtiyacınız oldu. Bu durumda o proje için yeniden yazmak yerine daha önce yazmış olduğunuz modülü kullanabilirsiniz. Daha açık örneklemek gerekirse bugün yazmış olduğunuz bir modülü, eklentiyi, sınıfı ömür boyu çok daha kolay ve rahatlıkla projenize dahil edersiniz. Bu olay kod yazmadan proje çıkarmaya kadar gider. Php projelerinizde oop mimarisini kullanmanız bir diğer faydası da her şey yerli yerindedir. 10 yıl sonra bile projeyi açtığınızda neyin nerede olduğunu çok rahat bulabilirsiniz. Bir de mvc mimarisini kullandığınızda çok daha profesyonel projeler, uygulamalar oluşturabilirsiniz.

Php ile oop mimarisini kullanarak proje geliştirmek için bazı terimleri bilmemiz gerekiyor. Diğer dillerde olduğu gibi  php dilinde de oop mimarisi sınıf,fonksiyonlar(metot) ve parametreler üzerine kuruludur.

Sınıf nedir nasıl oluşturulur ?

Sınıf (class) bir çok fonksiyonu bir düzen içerisinde barındıran yapılardır. Oop mimarisinin temelidir. Blog örneğimizden yola çıkarak bir yazı sınıfının içinde yazı ekleme, yazı silme, yazı düzenleme gibi fonksiyonlar bulunur. Sınıflar hakkında detaylı bilgiye http://php.net/manual/tr/language.oop5.php buradan ulaşabilirsiniz.

Sınıf tanımlamak için class komutunu kullanırız. Yukarıdaki örneğimizden devam ederek yazılar adında bir sınıf oluşturalım.


<?php

class yazilar {

// php oop dersleri

}

?>

Sınıflar tıpkı fonksiyonlar gibi çağrılmayı beklerler. Bir sınıfı çağırmak için new komutu kullanılır. Yukarıdaki  yazilar sınıfımızı çağırmak için


<?php

new yazilar();

?>

yazmamız yeterlidir. Şu an yazılar sınıfımızı çağırdık ancak hiç bir değişiklik olmadı. Çünkü biz sınıfımıza ait bir fonksiyon(metot) tanımlamadık ve o fonksiyonu çağırmadık. Sınıfımıza merhaba adında  bir fonksiyon ekleyelim ve bu fonksiyon ekrana “Merhaba” yazsın. Bir sınıfa fonksiyon eklemek için public function komutunu kullanırız. (Şimdilik tabi ki )


<?php

class yazilar {

 public function merhaba(){

 echo "Merhaba";

 }

}

?>

Şimdi yazılar sınıfını bir değişkene atayıp çağıralım.


<?php

$oop = new yazilar();

?>

Yazılar sınıfımız şu an çalışıyor. Bizim ekrana “Merhaba” yazmasını istediğimiz fonksiyonu çağırmadığımız için sınıfı çağırdığımız halde herhangi bir değişiklik olmadı. Bir sınıf altındaki fonksiyonu çağırmak için ->  işaretini kullanılırız. Yazılar sınıfımızdaki merhaba fonksiyonu çağırmak için:


<?php

$oop = new yazilar();

$oop->merhaba();

?>

şeklinde kullanmamız gerekir. Özetle ne yaptığımıza bir bakalım. class komutunu kullanarak yazilar adında bir sınıf oluşturduk. Daha sonra new komutuyla sınıfımızı çağırdık. Ardından public function komutu ile sınıfımıza merhaba adında bir fonksiyon tanımladık. Son olarak da -> işaretiyle çağırdığımız sınıfımızın merhaba fonksiyonu çalıştırdık. Kodlarla anlatmak gerekirse 🙂


<?php

class yazilar {

 public function merhaba(){

 echo "Merhaba";

 }

}

$oop = new yazilar();

$oop->merhaba();

?>

Sınıfların ana metotları bir diğer adıyla yapıcı ve yıkıcı metotları bulunur. Bu ana metotlar __construct ve __destruct metotlarıdır. Bu arkadaşlardan __construct yapıcı, __destruct yıkıcı metot olarak bilinir.

Yapıcı ve yıkıcı metot nedir ?

Yapıcı metot sınıf çağrıldığı anda çalışan fonksiyon(metot)dur. Yani new sinifadi(); diyerek bir sınıfı çağırdığınızda hiç bir fonksiyon belirtmeseniz bile çalışacak olan fonksiyondur. Yıkıcı metot ise en son işlem bittiğinde çalışacak olan fonksiyondur. Yapıcı ve yıkıcı metot tanımlarken de public function komutunu kullanırız. Kısa bir örnekle konuya açıklık getirelim.


<?php

class anametot{

public function __construct(){
echo "Sınıf çalıştı";
}

public function __destruct(){
echo "Sınıf bitti";
}

}

new anametot();

?>

Ekran çıktısı: Sınıf çalıştıSınıf bitti

Yapıcı ve yıkıcı metotları tanımlamak zorunlu değildir. Ancak ilerleyen yazılarda çok fazla faydasını göreceksiniz. Şiddetle öneriyorum der ve bu yazımı burada bitiririm 🙂 Umarım faydalı olur. Php oop derslerinin bir sonraki yazısında görüşmek üzere iyi çalışmalar dilerim 🙂

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Solve : *
48 ⁄ 24 =