Dalam bidang pemrograman berbasis objek, terdapat beberapa konsep yang telah mapan yang membantu mengelola akses ke properti objek. Salah satu aspek sentral ini adalah Getter dan Setter. Di Python, konsep ini tidak diimplementasikan dengan cara yang sama seperti dalam bahasa pemrograman berbasis objek lainnya. Dalam panduan ini, kamu akan belajar bagaimana menggunakan Getter dan Setter di Python secara lebih efektif untuk mengontrol akses ke properti kelas kamu.
Pemahaman Utama
- Getter dan Setter adalah metode yang mengontrol akses ke properti.
- Di Python, ada cara elegan untuk mengimplementasikan Getter dan Setter dengan dekorator @property.
- Penggunaan konvensi penamaan kustom membantu untuk membedakan dengan jelas antara properti internal dan publik.
- Konvensi Python untuk pemodifikasi akses berbeda dari bahasa lainnya.
Panduan Langkah-demi-Langkah
Langkah 1: Membuat Kelas dengan Properti
Mulailah dengan mendefinisikan sebuah kelas sederhana. Misalkan, kamu ingin membuat kelas Person yang memiliki nama sebagai atribut. Nama tersebut disimpan sebagai properti privat di dalam inisialisator.

Di sini, _name dideklarasikan sebagai properti internal, di mana awalan garis bawah menandakan bahwa itu adalah variabel privat.
Langkah 2: Menambahkan Getter
Untuk mengakses properti internal name, tambahkan metode Getter. Metode ini mengembalikan nilai saat ini dari nama tersebut.

Langkah 3: Menambahkan Setter
Sekarang kita menambahkan metode Setter, sehingga nama orang tersebut dapat diubah. Setter memungkinkan kamu untuk menetapkan nilai baru untuk properti internal.

Langkah 4: Menggunakan @property
Di Python, penanganan properti menjadi lebih elegan ketika kamu menggunakan dekorator @property. Dengan cara ini, kamu dapat mendefinisikan Getter dan Setter langsung di dalam kelas tanpa perlu membuat metode terpisah.

Langkah 5: Mengelola Properti Non-Publik
Untuk memastikan bahwa properti internal tidak dapat diakses langsung dari luar, kamu bisa menggunakan awalan __ untuk lebih memperkuat kapsulasi properti. Pendekatan ini memastikan bahwa akses hanya dilakukan melalui metode Getter dan Setter.

Dengan implementasi ini, dipastikan bahwa __name tidak dapat diakses dari luar.
Ringkasan – Getter dan Setter di Python
Dalam panduan ini, kamu telah belajar bagaimana cara mengimplementasikan Getter dan Setter di Python secara efektif untuk mengontrol akses ke variabel objek. Kamu juga telah mengenal penggunaan @property, yang membuat kode lebih rapi dan idiomatis. Dengan mengkapsulasi properti menggunakan awalan ganda, kamu dapat memastikan bahwa variabel internal terlindungi dari akses yang tidak sah.
Pertanyaan yang Sering Diajukan
Apa itu Getter dan Setter di Python?Getter dan Setter adalah metode yang mengontrol dan memungkinkan akses ke properti sebuah kelas.
Bagaimana cara mengimplementasikan Getter dan Setter di Python?Kamu bisa mengimplementasikan Getter dan Setter menggunakan metode atau dekorator @property.
Apa keuntungan dari @property?Dekorator @property memungkinkan akses yang elegan dan intuitif ke atribut, tanpa harus mengimplementasikan metode terpisah.
Mengapa properti di Python tidak boleh dapat diakses secara langsung?Akses langsung dapat menyebabkan perilaku yang tidak terduga dan mengancam integritas data objek, sehingga lebih baik untuk mengontrol akses tersebut.
Apa artinya menandai sebuah properti sebagai "privat"?Sebuah properti privat ditandai dengan awalan garis bawah (_) atau garis bawah ganda (__) untuk menunjukkan bahwa itu tidak seharusnya diakses langsung dari luar.