Results (
Indonesian) 1:
[Copy]Copied!
MotivasiDalam konteks ini tanggung jawab ini dianggap sebagai salah satu alasan untuk mengubah. Prinsip ini menyatakan bahwa jika kita memiliki 2 alasan untuk mengubah kelas, kita harus membagi fungsionalitas dalam dua kelas. Masing-masing kelas akan menangani hanya salah satu tanggung jawab dan pada masa depan jika kita perlu membuat satu perubahan kita akan membuat dalam kelas yang menanganinya. Saat kita perlu untuk membuat perubahan dalam kelas memiliki lebih tanggung jawab perubahan dapat mempengaruhi fungsi kelas-kelas lain.Prinsip tanggung jawab satu adalah sebuah prinsip yang sederhana dan intuitif, tetapi dalam prakteknya memang kadang-kadang sulit untuk mendapatkan yang benar.MaksudKelas harus memiliki hanya satu alasan untuk mengubah.ContohMari kita asumsikan kita perlu objek untuk menyimpan pesan email. Kita akan menggunakan antarmuka IEmail dari bawah sampel. Pada pandangan pertama, semuanya tampak baik. Pada melihat lebih dekat, kita dapat melihat bahwa IEmail antarmuka dan Email kelas kami memiliki tanggung jawab 2 (alasan untuk mengubah). Salah satu akan menggunakan kelas di beberapa email protokol seperti pop3 atau imap. Jika protokol lainnya harus didukung objek harus diserialisasikan di cara lain dan kode harus ditambahkan untuk mendukung protokol baru. Satu lagi akan untuk kolom isian konten. Bahkan jika konten mungkin string yang kita inginkan di masa depan untuk mendukung HTML atau format lain.Jika kita menjaga hanya satu kelas, setiap perubahan untuk tanggung jawab mungkin mempengaruhi yang lain: Menambahkan sebuah protokol baru akan menciptakan perlu menambahkan kode untuk parsing dan serializing konten untuk setiap jenis bidang. Menambahkan baru jenis konten (seperti html) membuat kita untuk menambahkan kode untuk masing-masing protokol dilaksanakan.Kita dapat membuat sebuah antarmuka baru dan kelas yang disebut IContent dan konten untuk membagi tanggung jawab. Yang hanya memiliki salah satu tanggung jawab untuk setiap kelas memberikan desain yang lebih fleksibel: menambahkan sebuah protokol baru menyebabkan perubahan hanya di kelas Email. menambahkan jenis konten baru menyebabkan perubahan hanya didukung dalam kelas konten.KesimpulanPrinsip tanggung jawab satu merupakan cara yang baik untuk mengidentifikasi kelas selama tahap desain aplikasi dan itu mengingatkan Anda untuk memikirkan cara-cara yang kelas dapat berkembang. Pemisahan tanggung jawab baik dilakukan hanya ketika gambar lengkap bagaimana aplikasi harus bekerja baik memahami.
Being translated, please wait..
