Alıştırmalar
← Ünite 3

Ünite 3: Sınıf Türleri — Alıştırmalar

Ders kitabının açık uçlu alıştırmaları. Bunlar çoktan seçmeli sınav sorusu değil — düşünmeni, araştırmanı, kendi cümlelerinle anlatmanı isteyen etkinlikler. Kitabın verdiği örnek yanıtlar kapalı duruyor; önce kendin dene.

  1. Alıştırma 1myders hazırladı
    Soyut (Abstract) sınıflar ile Mühürlü (Sealed) sınıfların tasarım amaçlarını karşılaştırarak, bir sınıfın neden hem soyut hem de mühürlü olamayacağını gerekçeleriyle açıklayınız.
    Yanıt / ipucu
    Soyut sınıflar miras alınmak ve genişletilmek üzere tasarlanmışken, mühürlü sınıflar miras alınmayı kesinlikle engellemek için tasarlanmıştır. Bu iki kavram birbirine tamamen zıt amaçlara hizmet ettiği için bir sınıfın aynı anda hem soyut hem de mühürlü olması mantıksal ve teknik olarak imkansızdır.
  2. Alıştırma 2myders hazırladı
    Statik sınıfların nesnesinin oluşturulamaması ve tüm üyelerinin statik olması zorunluluğunu göz önünde bulundurarak, bu sınıfların bellekteki ömrünü ve kullanım senaryolarını araştırıp birer örnekle açıklayınız.
    Yanıt / ipucu
    Statik sınıflar uygulama ömrü boyunca bellekte kalır ve doğrudan sınıf adı üzerinden erişilen yardımcı (utility) fonksiyonlar veya ortak sabitler için kullanılır. Örneğin, matematiksel hesaplamalar içeren bir 'MatematikYardimcisi' sınıfı statik olarak tasarlanabilir.
  3. Alıştırma 3myders hazırladı
    Büyük ölçekli bir yazılım projesinde birden fazla geliştiricinin aynı sınıf üzerinde çakışma yaşamadan çalışabilmesi için Kısmi Sınıf (Partial Class) yapısının nasıl kullanılacağını senaryolaştırarak açıklayınız.
    Yanıt / ipucu
    Bir sınıf 'partial' anahtar kelimesiyle farklı dosyalara bölünerek geliştiricilere paylaştırılabilir; örneğin bir geliştirici sınıfın veritabanı işlemlerini yazarken diğeri iş mantığını yazabilir. Derleme aşamasında bu parçalar otomatik olarak tek bir sınıf halinde birleştirilir.
  4. Alıştırma 4myders hazırladı
    İç içe sınıfların (Nested Classes) kapsülleme (encapsulation) ilkesine nasıl katkı sağladığını ve dış sınıfın özel (private) üyelerine erişim yetkisini düşünerek, hangi durumlarda tercih edilmesi gerektiğini tartışınız.
    Yanıt / ipucu
    İç içe sınıflar, sadece belirli bir dış sınıfın içinde anlamlı olan ve dış dünyaya kapatılması gereken yardımcı yapıları gizlemek için tercih edilir. Dış sınıfın özel üyelerine doğrudan erişebildikleri için gereksiz veri paylaşımını ve bağımlılıkları azaltarak güvenli bir mimari sunarlar.
  5. Alıştırma 5myders hazırladı
    Kısmi yöntemlerin (partial methods) gövdesinin yazılmaması durumunda derleyicinin nasıl bir optimizasyon yaptığını ve bu durumun çalışma zamanı performansına etkisini araştırarak açıklayınız.
    Yanıt / ipucu
    Eğer bir kısmi yöntem uygulanmazsa, derleyici bu yöntemi ve ona yapılan tüm çağrıları derleme aşamasında koddan tamamen kaldırır. Bu sayede çalışma zamanında boş metot çağrıları yapılmaz ve herhangi bir performans maliyeti oluşmaz.