Skip navigation

Tag Archives: encapsulation

Encapsulation dalam OO merupakan konsep bagus untuk meminimalisir coupling. Namun kemaren menemukan kasus memberikan nilai tambah untuk Encapsulation

Untuk menceritakan kasusnya, anggap ada kelas Point (X,Y,Z). Terdapat suatu instance dari kelas Point ini, untuk dikalkulasikan dengan rumus:

Point1.X / (Point1.X + Point1.Y + Point1.Z)   + Point1.Y / (Point1.X + Point1.Y + Point1.Z) + Point1.Z / (Point1.X + Point1.Y + Point1.Z)

Kondisinya, rumus diatas akan dipanggil lebih sering daripada perubahan pada member Point. Dengan begini, akan lebih baik jika rumus tersebut dihitung setiap terjadi perubahan pada member. Dan dengan Encapsulation, implementasinya menjadi jauh lebih mudah.

int SetX(int tNewX)
{
    mX = tNewX;
    mKalkulasiX = mX/(mX+mY+mZ) + mY(mX+mY+mZ) + mZ/(mX+mY+mZ);
}

Dengan perhitungan dilakukan setiap terjadi perubahan, waktu yang diperlukan untuk perhitungan menjadi jauh lebih kecil. Sedangkan effort yang keluar untuk memastikan kalkulasi ulang ketika perubahan menjadi minimal. Encapsulation memang ampuh untuk OO.

Follow

Get every new post delivered to your Inbox.