Sesli Özet
← Ünite 5

Ünite 5: Sınıf ve Nesne İlişkisi — Sesli Özet

Dinleme Premium'a özel. 1. ünitenin sesli özeti ücretsiz; bu ünitenin seslendirme metni de aşağıda ücretsiz okunabilir.
Metni oku

Nesne tabanlı programlama (NTP), yazılım tasarımını işlevler ve mantıksal akış yerine, nesneler ve bu nesnelerin ait olduğu sınıflar etrafında kurgulayan bir yaklaşımdır. Bu model, özellikle büyük ve karmaşık projelerde bakım kolaylığı ve iş birlikçi geliştirme imkanı sunduğu için tercih edilir. Sınıf, bir nesneyi oluşturmak için kullanılan bir şablon veya prototiptir. Nesne ise bu şablondan türetilen, bellekte yer kaplayan ve kendine has kimliği olan somut bir varlıktır. NTP'nin temel ilkesi, gerçek hayattaki problemleri bu sınıflar ve nesneler arasındaki ilişkilerle modellemektir. Sınıflar, nesnenin sahip olacağı özellikleri (üye değişkenler) ve davranışları (metotlar) tanımlar. Bir sınıf tanımlandığında, bu sınıftan istenilen sayıda nesne üretilebilir. Üretilen her nesne, sınıfın belirlediği yapıya sahip olsa da, içerdiği veriler (değerler) bakımından birbirinden farklılaşabilir. Sınıf, soyut bir veri tipiyken; nesne bu tipin somutlaşmış halidir. Teknik olarak bir sınıf tanımlanırken 'class' anahtar sözcüğü kullanılır. Sınıfın gövdesinde tanımlanan değişkenler (alanlar) nesnenin durumunu, metotlar ise nesnenin yapabileceği işlevleri temsil eder. Nesne türetme işlemi 'new' anahtar sözcüğü ile gerçekleştirilir. Örneğin, 'Bilgisayar bilgisayar1 = new Bilgisayar();' ifadesi, bellekte 'Bilgisayar' sınıfından 'bilgisayar1' adında yeni bir nesne örneği oluşturur. Bu işlem, nesneye özgü bir bellek alanı ayrılmasını sağlar. Aynı sınıftan üretilen nesneler aynı tipte olsalar da, her birinin özellikleri (renk, marka, ram miktarı vb.) farklı değerler alabilir. Bu durum, nesnelerin birbirinden bağımsız kimliklere sahip olduğunu ve her birinin kendi verisini sakladığını gösterir. Yazılım dünyasında nesneler özellikler (attributes) ve davranışlar (behaviors) olmak üzere iki temel öğeden oluşur. Özellikler verileri, davranışlar ise metotları ifade eder. Örneğin, bir 'Araba' sınıfı; hız, vites ve maksimum hız gibi değişkenleri özellik olarak barındırırken, 'GazaBas' veya 'FreneBas' gibi fonksiyonları metot olarak içerir. Metotlar, nesnenin durumunu değiştiren veya bilgi veren alt programlardır. Bir araba nesnesinde gaza basıldığında hız değişkeni artar ve bu durum vitesin otomatik olarak güncellenmesini tetikleyebilir. Bu süreç, nesnenin kendi iç mantığını yönettiğini kanıtlar. Erişim belirleyiciler (public, private vb.), sınıf üyelerinin dışarıdan nasıl görüneceğini kontrol eder. 'public' olarak tanımlanan üyelere nesne üzerinden doğrudan erişilebilirken, 'private' üyeler sadece sınıfın kendi içindeki metotlar tarafından kullanılabilir.