8.1 – Entity Sınıfı ile Öğrenci Tanımı


📘 8.1 – Entity Sınıfı ile Öğrenci Tanımı


🔹 Açıklama:

“Entity sınıfı” kavramı, bir sistemde veri modelini temsil eden temel yapı taşını ifade eder. Windows Forms uygulamalarında, öğrenciler gibi sistemin temel birimini temsil eden varlıkları (Entity) tanımlamak, veri yönetimi açısından büyük kolaylık sağlar.

Bu tür sınıflar genellikle:

  • private alanlar ve public get-set özelliklerle tanımlanır
  • Uygulamanın farklı yerlerinde veri tutmak, taşımak ve işlemek için kullanılır
  • Kapsülleme sayesinde güvenli, esnek ve sürdürülebilir hâle gelir

📍 Kullanım Alanları:

  • Öğrenci, öğretmen, ürün, sipariş gibi temel veri modelleri
  • Listeleme, silme, güncelleme işlemlerinde verinin taşıyıcısı olarak
  • Veri katmanı oluşturulurken nesne yönelimli yapı kurmak
  • Gelişmiş projelerde Entity Framework gibi ORM yapıları için temel oluşturmak

🎯 Kazanımlar:

  • Entity sınıfı kavramını anlamak
  • Öğrenci bilgilerini barındıran, sade ama kapsüllü bir sınıf tasarımı yapmak
  • Kodun veri taşıma sorumluluğunu sınıfa devretmek
  • Form ve işlemlerden bağımsız, sadece veriyi temsil eden bir yapı kurmak

🧪 8.1 – Entity Sınıfı ile Öğrenci Tanımı: Uygulamalı 5 Örnek


📌 Örnek 1: Basit Öğrenci Sınıfı Tanımı

🎯 Amaç:

Sadece ad, soyad, numara tutan sade bir öğrenci sınıfı oluşturmak.

💻 Kod:

public class Ogrenci
{
    public string Ad { get; set; }
    public string Soyad { get; set; }
    public int Numara { get; set; }
}

📝 Açıklama:

Bu yapı, sade bir Entity sınıfıdır. Herhangi bir iş mantığı içermez, yalnızca veriyi temsil eder.


📌 Örnek 2: private Alanlar ile Kapsüllü Öğrenci Sınıfı

🎯 Amaç:

Verilere doğrudan erişimi engelleyerek kapsülleme uygulamak.

💻 Kod:

public class Ogrenci
{
    private string ad;
    private string soyad;
    private int numara;

    public string Ad
    {
        get { return ad; }
        set { ad = value.Trim(); }
    }

    public string Soyad
    {
        get { return soyad; }
        set { soyad = value.Trim(); }
    }

    public int Numara
    {
        get { return numara; }
        set
        {
            if (value > 0)
                numara = value;
        }
    }
}

📝 Açıklama:

Bu yapı veri doğruluğunu gözetir. Numara negatif girilemez, isimler boşluklardan arındırılır.


📌 Örnek 3: ToString Metodu ile Formatlama

🎯 Amaç:

ListBox veya ComboBox gibi yapılarda öğrenci nesnesini anlamlı şekilde göstermek.

💻 Kod:

public override string ToString()
{
    return $"[{Numara}] {Ad} {Soyad}";
}

📝 Açıklama:

Bu metot sayesinde öğrenci nesneleri liste kutularında düzgün ve kullanıcı dostu şekilde gösterilir.


📌 Örnek 4: Not Ortalaması ile Genişletilmiş Öğrenci Sınıfı

🎯 Amaç:

Öğrencinin 3 sınav notunu ve ortalamasını sınıf içinde tutmak.

💻 Kod:

public class Ogrenci
{
    private double not1, not2, not3;

    public double Not1 { get => not1; set => not1 = value; }
    public double Not2 { get => not2; set => not2 = value; }
    public double Not3 { get => not3; set => not3 = value; }

    public double Ortalama => (not1 + not2 + not3) / 3;
}

📝 Açıklama:

Sınıf artık sadece bilgi taşımaz, aynı zamanda hesaplama da yapar. Bu Entity sınıfının gelişmiş bir versiyonudur.


📌 Örnek 5: Öğrenci Bilgilerini Listeleyici Yardımcı Metot

🎯 Amaç:

Öğrenci sınıfının kendi bilgilerini tek bir metotla kullanıcıya sunması.

💻 Kod:

public string BilgileriVer()
{
    return $"Numara: {Numara}\nAd Soyad: {Ad} {Soyad}";
}

📝 Açıklama:

Bu yardımcı metot sayesinde kullanıcıya bilgi gösterimi kolaylaşır ve form tarafında fazladan kod yazılmaz.


✅ Özet:

Bu örneklerle öğrenciler:

  • Entity sınıfının veriyi nasıl temsil ettiğini
  • Kapsülleme ile güvenli veri aktarımını
  • ToString() ve yardımcı metotlarla nesne gösterimini
  • Gerçek sistemlerde kullanılabilir öğrenci modellerini tanımış oldular.

Leave a Reply