MVP Pattern
MVP Pattern
Apa itu MVP Arsitektur?
Model-View-Presenter atau yang biasa disingkat menjadi MVP adalah sebuah konsep arsitektur pengembangan aplikasi yang memisahkan antara tampilan aplikasi dengan proses bisnis yang bekerja pada aplikasi. Arsitektur ini akan membuat pengembangan aplikasi kita menjadi lebih terstuktur, mudah di-test dan juga mudah di-maintain.
Berikut penjelasan masing-masing layer pada MVP.
- View, merupakan layer untuk menampilkan data dan interaksi ke user. View biasanya berupa Activity, Fragment atau Dialog di Android. View ini juga yang langsung berkomunikasi dengan user.
- Model, merupakan layer yang menunjuk kepada objek dan data yang ada pada aplikasi.
- Presenter, merupakan layer yang menghubungkan komunikasi antara Model dan View. Setiap interaksi yang dilakukan oleh user akan memanggil Presenter untuk memrosesnya dan mengakses Model lalu mengembalikan responnya kembali kepada View.
- View, merupakan layer untuk menampilkan data dan interaksi ke user. View biasanya berupa Activity, Fragment atau Dialog di Android. View ini juga yang langsung berkomunikasi dengan user.
- Model, merupakan layer yang menunjuk kepada objek dan data yang ada pada aplikasi.
- Presenter, merupakan layer yang menghubungkan komunikasi antara Model dan View. Setiap interaksi yang dilakukan oleh user akan memanggil Presenter untuk memrosesnya dan mengakses Model lalu mengembalikan responnya kembali kepada View.
Jadi keuntungan dalam menggunakan Pattern ini apa ?
Pada penjelasan diatas, pemisahan kode program berdasarkan fungsi dapat membuat struktur kode kita lebih rapi dan tentu saja lebih mudah di-test. Seperti yang kita ketahui, berbagai View yang kita gunakan biasanya bergantung keras (tighly-coupled) dengan library Android, sehingga kita akan kesulitan untuk melakukan testing pada aplikasi kita, misalnya unit testing. Dengan struktur pengembangan aplikasi ini, kita dapat membuat aplikasi kita lebih maintainable dan testable.
Untuk contoh implementasinya silahkan klik link ini Patterns https://github.com/azrinurvani/CRUD-Using-MVP-Patterns

Komentar
Posting Komentar