çok basit ve anlaşılan bir yazı değil.

Mesala

Alıntı
Bir Sınıf çağırıldığında ilk olarak aynı isimde ki fonksiyonu çalıştırır.
demişsin bunu herkes yanlış anlayacaktır. buna __construct yani yapılandırıcı denir bunu kişi eğer sınıfı başlatırken belli tanımlamalar yapmak isterse kullanır istemesse ek olarak bir metot yazıp öyle tanımlattırır. Dolayısıyla senin kurduğun cümle bi çok insan tarafından yanlış anlaşılmalara neden olabilir veya akıllarında bir sınıf tanımladım şimdide aynı isimde bir metot tanımlamam gerekiyor gibi bir düşünce oluşabilir.

Sınıfları örnek vermek gerekirse bir insan hayatı gibi düşünebilirsiniz.

İnsanlar doğarlar, yaşarlar ve ölürler.

O zaman sınıflar ilk başta doğarlar sonrasında ise yaşama evresine girerler. Nedir bu yaşama evreleri düşünürsek bir çok şey olabilir örneğin, yemek yeme, yürümek, uyumak, yatmak,kalkmak... vb şeyler de sınıfın metotları olarak düşünebilirsiniz. Neydi nesneler sürekli gelişime açık kodlamalardı. O halde az önceki saydığım özelliklere daha bir çok özellik eklenebilir ve sınıf içeriği genişletilebilir. Tüm herşey yapıldıktan sonra ise sınıf son aşamasına gelir ve sınıfı sonlandırırız yani ölür....

bir örnek:
<?php
# Bir Ev Sınıfımız olsun bunu yaratalım sonrasında
# Ev için neler gerekiyor onları ekleyelim
# En sonunda da bitirelim..
# Giriş - gelişme - sonuç gibi düşünebilirsiniz.

# Ev Nesnemiz yaratıldı.
class Ev
{
    # Şimdi bize ev yapmak için ne lazım ? Önce Arsa o halde arsa özelliğimizi
    # sınıfımızda tanımlayalım...
    
    public function arsaAl()
    {
        echo 'Arsa alındı.<br>';
    }
    
    # Evet arsayı aldık peki ya şimdi ? bir proje lazım değil mi ? O halde proje
    # özelliğini ekleyelim.. ve sınıfımızı geliştirmeye devam edelim...
    
    public function projeCiz()
    {
        echo 'Proje cizildi.<br>';
    }
    
    # Şimdi ise geriye evi yapmak için işçi almaya geldi..
    
    public function isciAl()
    {
        echo 'İşçiler bulundu.<br>';
    }
    
    # İşcilerimizi de tuttuk tuğla çimento kum demir gibi ev yapımı için gerekli
    # malzemeleri almaya sıra geldi..
    
    public function malzemeAl()
    {
        echo 'Ev yapımı için gerekli malzemeler alındı. Tuğla,Çimento,Demir vb.<br>';
    }
    
    # Şimdi sıra geldi evin yapılmasına...
    
    public function evYap()
    {
        echo 'İşçiler, Tuğla, Çimento ve Demir vb. gibi malzemeleri kullanarak binayı yaptılar<br>';
    }
    
    # Evet artık binamız hazır hale geldiğine göre içine geçip oturabiliriz...
    # Gördüğünüz gibi sınıfa daha bir çok yeni özellik ( metot ) ekleyebiliriz..
    
    public function evBitti()
    {
        echo 'Evinizin yapımı tamamlandı. Güle güle oturunuz..';
    }
}

# Ev nesnemizi yaratalım.
$ev = new Ev;

# Ev yapımı için arsa alalım
$ev->arsaAl();

# Projemizi çizelim
$ev->projeCiz();

# Proje hazır olduğuna göre ev yaptırmak için işçi bulalım
$ev->isciAl();

# İşçiler de alındı şimdi de malzemeleri alalım
$ev->malzemeAl();

# Herşey alındığına göre evimizi yapalım..
$ev->evYap();

# Evimizi bitirdiğimize göre artık içine geçip oturalım..
$ev->evBitti();
?>
evet örneğimizi de alıp çalıştırırsanız bir sınıfın ( nesnenin ) tüm değil ama hemen hemen hepsini yaptık ev yapımı için tüm materyalleri topladıktan sonra evimizi yapıp inşa ettik ve içine oturduk.

Peki bu sınıf daha da genişletilemez mi ? Pek tabi ki evet genişletilebilir mesala asansör ekleyebilirsiniz, doğal gaz çektirebilirsiniz, tüm pencereleri pimapen yaptırabilirsiniz .... gibi genişletebilirsiniz...

Sanırım yeter bu kadar... buda bir makale oldu galiba neyse sınıfı gerçek nesne olarak düşünün ve o nesne ile neler yapılabilir planını yaptıktan sonra diğer işlemleri yapar ve sonuçlandırırsınız...

www.ysfkc.com