İçeriğe geç
parazade

Yapıcı Metot Nedir?

İngilizce: Constructor

Yayın: · Son güncelleme:

Yapıcı Metot Nedir? Kısaca

Yapıcı metot (constructor), bir sınıftan yeni nesne oluşturulduğu anda otomatik olarak çalışan ve nesnenin başlangıç değerlerini atayan özel metottur. Python'da `__init__`, Java ve C#'ta sınıfla aynı adı taşır.

Yapıcı Metot nedir?
İçindekiler
  1. Yapıcı metot nedir?
  2. Nasıl yazılır?
  3. İyi kullanım ve yaygın hatalar

Yapıcı metot nedir?

Yapıcı metot, bir nesne doğduğu anda çalışan ilk koddur. Görevi, nesneyi kullanıma hazır hâle getirmektir: gerekli değerleri atamak, varsayılanları belirlemek ve gerekirse girdileri kontrol etmek. İngilizcede constructor olarak geçer.

Bir otel odasının misafir gelmeden hazırlanması gibi düşünebilirsiniz. Oda kullanılmaya başlamadan önce yatak serilir, havlular konur. Yapıcı metot da nesne kullanılmadan önce içini düzenler.

Nasıl yazılır?

Python'da yapıcı metodun adı __init__'tir. class BankaHesabi: içinde def __init__(self, sahip, bakiye=0): tanımlanır ve gövdesinde self.sahip = sahip, self.bakiye = bakiye atamaları yapılır. Ardından hesap = BankaHesabi("Zeynep", 500) yazıldığında bu metot kendiliğinden çalışır ve 500 TL bakiyeli bir hesap oluşur.

Java ve C#'ta yapıcı metot sınıfla aynı adı taşır ve dönüş tipi yazılmaz: public BankaHesabi(String sahip, double bakiye). JavaScript'te ise sınıf içinde constructor adıyla tanımlanır. Bu dillerde farklı parametre setleriyle birden çok yapıcı metot tanımlamak da mümkündür.

İyi kullanım ve yaygın hatalar

Yapıcı metotta doğrulama yapmak, hatalı nesnelerin baştan oluşmasını engeller. Negatif bakiyeyle hesap açılmak istenirse metot bir istisna fırlatabilir. Böylece programın geri kalanı, her hesabın geçerli değerlerle başladığından emin olur.

Öte yandan yapıcı metodu ağır işlerle doldurmamak gerekir. Nesne oluşturulurken uzak bir sunucuya bağlanmak ya da büyük dosyalar okumak, nesne üretmeyi yavaş ve test etmeyi zor hâle getirir. Bu tür işleri ayrı bir metoda taşıyıp ihtiyaç anında çağırın.

Sıkça Sorulan Sorular

Constructor ne demek?

Constructor, Türkçede yapıcı metot olarak karşılanır. Bir sınıftan nesne oluşturulurken otomatik çalışan ve başlangıç değerlerini atayan özel metottur.

Her sınıfta yapıcı metot yazmak zorunlu mu?

Hayır. Yapıcı metot yazmazsanız çoğu dil parametresiz, varsayılan bir yapıcı metot kullanır. Başlangıçta değer atamanız gerekiyorsa kendi yapıcı metodunuzu tanımlarsınız.

İlgili terimler

Sınıf(Class)Sınıf (class), nesne yönelimli programlamada aynı türden nesnelerin hangi verileri ve davranışları taşıyacağını tanımlayan şablondur. Sınıftan üretilen her somut örneğe nesne denir.Nesne(Object)Nesne (object), nesne yönelimli programlamada bir sınıftan üretilen, kendi verilerini (özellikler) ve davranışlarını (metotlar) taşıyan somut örnektir. Örneğin `Araba` sınıfından üretilen her araç ayrı bir nesnedir.Metot(Method)Metot (method), nesne yönelimli programlamada bir sınıfa ya da nesneye ait olan fonksiyondur. Nesnenin verisiyle çalışır ve genellikle `nesne.metot()` biçiminde çağrılır; örneğin `hesap.para_yatir(500)` bir metot çağrısıdır.Nesne Yönelimli Programlama(Object-Oriented Programming)Nesne yönelimli programlama (OOP), yazılımı veri ve bu veri üzerinde çalışan davranışları bir arada tutan nesneler etrafında düzenleyen programlama yaklaşımıdır. Kapsülleme, kalıtım, çok biçimlilik ve soyutlama temel ilkeleridir.Parametre(Parameter)Parametre, bir fonksiyon tanımlanırken parantez içine yazılan ve fonksiyonun dışarıdan alacağı değeri temsil eden isimdir. Fonksiyon çağrıldığında bu parametrelere gerçek değerler, yani argümanlar gönderilir.MySQLMySQL, verileri tablolarda saklayan ve SQL diliyle yönetilen açık kaynak kodlu bir ilişkisel veritabanı yönetim sistemidir. Web sitelerinde, özellikle WordPress gibi PHP tabanlı sistemlerde çok yaygın kullanılır.