Kopling dan kohesi adalah dua ukuran berbeda dari modul perangkat lunak.
Coupling adalah deskripsi bagaimana dua kelas berinteraksi. Jika dua kelas saling bergantung satu sama lain, mereka menunjukkan keterkaitan erat; jika dua kelas dapat digunakan secara independen satu sama lain, mereka menunjukkan penggandengan longgar. Kopling longgar lebih disukai karena cocok untuk komponen yang dapat digunakan kembali dan mudah dirawat.
Kohesi adalah deskripsi bagaimana komponen kelas tunggal menjadi satu. Kelas yang berisi metode yang tidak ada hubungannya satu sama lain menunjukkan kohesi rendah; kelas yang berisi metode yang serupa secara logis menunjukkan kohesi tinggi. Kohesi yang tinggi mengarah pada kelas-kelas terfokus yang melayani tujuan yang jelas.
Hubungan antara kopling dan kohesi bersifat simbiosis. Jika dua kelas digabungkan secara ketat, kemungkinan besar mereka tidak memiliki tanggung jawab yang jelas dan oleh karena itu akan menunjukkan kohesi yang rendah. Sebaliknya, jika sebuah kelas sangat kohesif, tujuannya sudah terdefinisi dengan baik dan lebih mudah untuk digunakan dengan kelas-kelas lain dengan cara yang menghindari penggabungan dengan kelas-kelas tersebut.
Untuk tugas khusus Anda, mulailah dengan menulis kode yang "baik" - kopling rendah dan kohesi tinggi. Untuk mengubahnya menjadi sesuatu dengan kopling rendah dan kohesi rendah, pertahankan kelas-kelas independen satu sama lain tetapi ubah fungsinya. Buat kelas Utilitas dengan sejumlah metode yang tidak terkait. Masukkan semua metode yang dimulai dengan vokal ke kelas lain. Lakukan sesuatu yang mencegah kelas mana pun memiliki tujuan yang jelas.
Selama Anda menjaga agar kelas-kelas tersebut tidak bergantung pada satu sama lain, Anda membuat kode yang menunjukkan penggandengan rendah namun juga memiliki kohesi rendah.
person
BJ Myers
schedule
21.04.2015