Sınıflar (Classes)

Lisans: Creative Commons 11.12.2020 tarihinde güncellendi
Bakabileceğiniz Etiketler: Eğitmen: Geleceği Yazanlar Ekibi

OOP temelde nesneler ve onların ilişkisi üzerine kurulu bir metodoloji olarak tanımlanmıştır. Ancak öncelikli olarak sınıf mantığının iyi anlaşılması gerekir. Nesneler sınıflardan türetilir ve yetenekleriyle yapabilecekleri sınıflarla belirtilir. Nesne-Sınıf ilişkisi için şöyle bir örnek verilebilir: İnsan bir sınıftır, ama her bir kişi, insan sınıfının bir nesnesidir. Örneğin, günlük kullanımda Ali bir insandır diyebiliyor olsak da, şu denklem yanlıştır: İnsan=Ali. Eğer sözlükte insan maddesinin yanında tanım olarak Ali’den bahsedilmiyorsa, bu eşitlik hiçbir zaman doğru olamaz. İnsan sınıfı bize Ali gibi her insanın yapabileceklerini, yeteneklerini ve özelliklerini belirtir. İnsan konuşabilir, el sallayabilir, koşabilir v.s. dediğimiz her seferinde, bu işlerin Ali için de geçerli olduğunu kabul etmiş oluruz. Her insanın bir göz rengi vardır dersek, Ali’nin de bir göz renginden bahsedebiliriz.

Class / Objects ilişkisi

Programlarda da bu mantıktan hareket edilir. Bir düğme yapıp bunu kullanmak istiyorsanız, önce düğme sınıfını tanımlarsınız. Daha sonra da istediğiniz yerde düğme sınıfından örnekler alırsınız (instance almak). .NET Framework içinde tanımlanmış bir Button sınıfı bulunur. İsterseniz, tanım yapmak yerine, doğrudan kütüphane içindeki sınıftan da nesne türetebilirsiniz (instance alabilirsiniz). Alttaki örnekte, önce instance alınmış ve daha sonra, Text özelliğinin değeri belirtilmiştir. Sonra da, Click olayı olduğunda yapılacak işleri belirtmek için yenibuton.Click metodu oluşturulmuş ve işaret edilmiştir.

 

Button yenibuton = new Button();

yenibuton.Text = "Click me";
yenibuton.Click += yenibuton_Click;

private void yenibuton_Click(object sender, EventArgs e)
{
    Console.WriteLine("Merhaba");
}

 

Birinci satırda, Button sınıfından bir örnek alınmıştır. İkinci satırda, oluşturulan yenibuton isimli Button nesnesinin Text özelliğine “Click me” yazısı atanır. Üçüncü satırda, yenibuton.Click += yazılır ve klavyeden Tab tuşuna basıldığında eşittirin karşısına yenibuton_Click yazılır. Bir kere daha Tab tuşuna basıldığında aşağıdaki butona Click edildiğinde çalışacak kod bloğunu oluşturacaktır.

Bu kod bloğunda parametre buton object, click işleminin argümanları EventArgs'e olarak taşınır.

Bu sayede düğmenin geliştirilmesine olan gereksinim ve bu geliştirmenin uygulama üzerindeki etkileri ortadan kaldırılmış, projenin daha rahat bir şekilde yönetilmesi sağlanmıştır.