Tugas-7 Refactoring
Nama : Muhammad Ismail
NRP : 5025201223
Kelas : Evolusi Perangkat Lunak
Sebelum Refactoring
Pada kode di atas, terlihat bahwa fungsi getUsers() melakukan beberapa tugas sekaligus:
- Mengambil data users
- Melakukan filter
- Melakukan transformasi data
Hal ini melanggar prinsip Single Responsibility dimana sebuah fungsi hanya boleh memiliki 1 tanggung jawab saja. Selain itu kode juga kurang modular.
Sesudah Refactoring
Setelah dilakukan refactoring:
- Fungsi digunakan hanya untuk satu tujuan saja sesuai prinsip SRP
- Kode lebih modular dengan memisahkan logic filter dan transform ke dalam class terpisah
- Lebih mudah dimaintain dan dikembangkan ke depannya
- Lebih modular dan reusable
- Mudah di test secara independen (loose coupling)
- Lebih mudah dikembangkan fitur dengan mengubah class tertentu saja
Comments
Post a Comment