Encapsulation di C#: Jaga Data Seaman Dapur Restoran!

Encapsulation di C#: Jaga Data Seaman Dapur Restoran!

cs.bimobo
0

Belajar Access Modifier Tanpa Bikin Mules

Salah satu kekuatan OOP adalah Encapsulation — yaitu kemampuan untuk membungkus data agar hanya bisa diakses oleh bagian program yang tepat. Ibarat dapur restoran, kamu gak mau semua pelanggan langsung masuk ke dalam dan ngacak-ngacak masakan, kan?

Encapsulation menjaga agar data kamu gak diubah sembarangan. Di C#, ini dilakukan dengan bantuan access modifier seperti private, public, dan protected.

🔐 Apa Itu Encapsulation?

Encapsulation adalah teknik membungkus data + logika pengaksesannya di dalam class.

  • private: hanya bisa diakses dari dalam class itu sendiri
  • public: bisa diakses dari mana saja
  • protected: bisa diakses dari class itu dan class turunannya

Contoh Tanpa Encapsulation (Berbahaya!)

class Produk
{
    public string Nama;
    public double Harga;
}

Dengan deklarasi public seperti itu, siapa saja bisa mengubah harga sesuka hati:

Produk p = new Produk();
p.Nama = "Teh Manis";
p.Harga = -50000; // 💣 Harga minus? Ini bahaya!

🛡️ Solusi: Gunakan Enkapsulasi dengan Property

Kita bungkus field harga dan atur aksesnya dengan properti:

class Produk
{
    private double harga;

    public double Harga
    {
        get { return harga; }
        set
        {
            if (value >= 0)
                harga = value;
            else
                Console.WriteLine("Harga tidak boleh negatif!");
        }
    }

    public string Nama { get; set; }
}

📌 Apa Untungnya?

  • Data hanya bisa diubah lewat aturan logis
  • Tidak ada data “nakal” yang bikin error tersembunyi
  • Program kamu jadi lebih aman dan scalable

💡 Studi Kasus Singkat

Skenario: toko online kamu punya sistem input harga. Tapi kamu gak mau input ngawur seperti -1000 atau 999999999. Jadi kamu buat filter via properti:

Produk p = new Produk();
p.Nama = "Pulsa";
p.Harga = -1000; // Output: Harga tidak boleh negatif!

Program tetap jalan, tapi data invalid ditolak secara elegan.

🧠 Kesimpulan

Kalau kamu ingin bikin aplikasi yang profesional dan tahan banting, kamu butuh Encapsulation.

  • Gunakan private untuk melindungi data
  • Berikan akses lewat public property yang punya kontrol
  • Jangan izinkan siapa pun masuk dapur — kecuali mereka bener-bener tahu cara masak!

📘 Artikel Berikutnya:

Kita akan bahas Inheritance di C# — alias pewarisan class. Biar kamu bisa bikin class turunan kayak ProdukDigital dari Produk, dengan fitur tambahannya sendiri!

Kalau class-mu udah aman, saatnya berbagi warisan 💼

Posting Komentar

0 Komentar

Posting Komentar (0)
3/related/default