Nesne tabanlı programlama (OOP) nedir ve nasıl kullanılır?

Nesne tabanlı programlama (OOP) nedir? Çalışma mantığı nasıl işler? Örneklerle açıklayabilir misiniz?

Nesne Tabanlı Programlama (OOP) Nedir?

Nesne tabanlı programlama (OOP), yazılım geliştirmek için bir metodoloji olarak tanımlanabilir. Programlama sürecini daha anlaşılır, düzenli ve esnek hale getirme amacındakii bu yaklaşım, gerçek dünyadaki nesneler ve durumları modellemeye yardımcı olur.

OOP’nin temel prensiplerinden olan sınıflar (class) ve nesneler (objects), kodun modüler ve tekrar kullanılabilir olmasını sağlar. Bu prensipler, kodların tekrar kullanılabilirliği ve programın genel anlaşılırlığını artırır.

Nesne Tabanlı Programlama (OOP) Nasıl Çalışır?

Nesne tabanlı programlamada her şey sınıf olarak tanımlanır. Bir sınıf (class), veri üyeleri (özellikler) ve metotları (işlevler) içerir. Somutlaştırılmış bir sınıfa nesne (object) denir. Sınıflar, aynı tür nesneleri oluşturmak için bir şablondur ve nesneler de bir sınıfın somut örnekleridir.

Örneğin, ‘Araba’ bir sınıf olabilir ve bu sınıfın özellikleri marka, model, renk olabilir. Metotları ise hızlan, yavaşla, dur gibi işlevler olabilir. Her bir marka, model ve renk kombinasyonu Araba sınıfının bir nesnesini oluşturur.

Nesne Tabanlı Programlama (OOP) Örneği

Aşağıda Python dilinde, bahsettiğimiz ‘Araba’ sınıfının basit bir örneğini görebilirsiniz:

class Araba:
    def __init__(self, marka, model, renk):
        self.marka = marka
        self.model = model
        self.renk = renk

    def hizlan(self):
        return "{} {} hızlanıyor".format(self.marka, self.model)

    def yavasla(self):
        return "{} {} yavaşlıyor".format(self.marka, self.model)

    def dur(self):
        return "{} {} durdu".format(self.marka, self.model)

araba1 = Araba('BMW', '3.20', 'Siyah')
print(araba1.hizlan())

Bu örnekte, Araba adında bir sınıf oluşturduk ve birkaç metodunu tanımladık. Sonra bu sınıftan ‘araba1’ adında bir nesne oluşturduk ve bu nesnenin metotlarından birini kullandık.

Php OOP örnek kullanımı:

Ayrıca size OOP (Object Oriented Programming) konusunda PHP kodlama dili ile ilgili örnekler verebilirim. Bu, nesne tabanlı programlama anlayışını kullanarak kodlama yapmanızı sağlayan bir konudur. Aşağıda basit bir sınıf tanımı örneği vereceğim:

class Araba {
  public $marka;
  public $model;
  public $renk;

  public function __construct($marka, $model, $renk) {
    $this->marka = $marka;
    $this->model = $model;
    $this->renk = $renk;
  }

  public function bilgileriGoster() {
    echo "Araba Markası: " . $this->marka . "<br>";
    echo "Araba Modeli: " . $this->model . "<br>";
    echo "Araba Rengi: " . $this->renk . "<br>";
  }
}

$araba1 = new Araba("Renault", "Megane", "Kırmızı");
$araba1->bilgileriGoster();

Bu örnekte, “Araba” adında bir sınıf tanımlıyoruz. Sınıfın üç özelliği (marka, model, renk) ve iki metodu (constructor, bilgileriGoster) bulunuyor. Constructor metodu, sınıf örneği oluşturulduğunda çalışır ve arabayı tanımlamak için aldığı parametreleri ilgili özelliklere atar. “bilgileriGoster” metodu ise arabayı ekrana yazdıran bir metottur.

Sonrasında $araba1 adında bir Araba nesnesi oluşturarak özelliklere değer atıyoruz. Ardından bu nesnenin “bilgileriGoster” metodunu çağırarak arabayla ilgili bilgileri ekrana yazdırıyoruz.

TERİMLER:

Sınıf (Class): Bir nesnenin özelliklerini (özellikler ve metotlar) tanımlayan bir kod blokudur.

Nesne (Object): Sınıfların somut örnekleridir ve sınıfın özelliklerini içerir.

Metot: Bir sınıf içerisinde tanımlanabilen ve o sınıfın nesneleri tarafından kullanılabilen işlev veya fonksiyondur.

1 Beğeni