Tugas-7 Refactoring
![Image](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkkRxrG_kW8oqQm5JNpvDK-m4FrIQxyBd2MBPYYbiAGrAUPEvnLNipT6WdAQNbz2I6PSX2IR5wC711_7JesP5J4M9i60Qvk9a-3kU58xKexYUTd1v_BykFVDwGUjLDXZyI1J2l6GcYYHU_3pTZ6NpxU29D58OREyF-vML1ZfxCFyGgUzyB1mtFjsuz_hiv/w454-h444/carbon.png)
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