Home > Informatika Lab'z > Model View Controller (MVC)

Model View Controller (MVC)

December 10th, 2008

Pengembangan perangkat lunak akan selalu mengalami perubahan, terutama perubahan kode pada interface suatu aplikasi, karena interface merupakan bagian yang berinteraksi langsung dengan user , dan inilah yang menjadi hal mendasar bagi user demi  kemudahan penggunaan aplikasi. Dengan perubahan yang terjadi, maka akan muncul potensi untuk terjadi perubahan juga pada bagian lainnya, dan akan menjadikan system menjadi semakin kompleks dan rumit.

Untuk  mengatasi masalah tersebut, maka diperkenalkanlah sebuah arsitektur  atau pola yang disebut Model View Controller (MVC). Model View Controller (MVC) adalah sebuah pola yang dapat membangun proyek perangkat lunak lebih efektif karena dilakukan dengan memilah komponen antara Model, View, dn Controller pada bagian- bagian dalam proyek.

Dalam MVC dikenal tiga komponen pembangun, di mana ada interaksi yang terjadi di antara mereka.

mvc1. Model

Model adalah sebuah layer pada MVC yang merepresentasikan data yang digunakan oleh aplikasi sesuai dengan proses bisnis yang terjadi pada data tersebut, dengan memilahnya menjadi beberapa bagian terpisah kembali, seperti penampungan data, persistence, proses manipulasi, dan lain- lain

Kelebihan dengan adanya Model adalah :

  • Proses maintenance aplikasi

Penempatan detail data dan opersinya pada area yang ditentukan (Model) sehingga tidak tersebar pada keseluruhan lingkup aplikasi

  • Reusable Model

Penggunaan kembali aplikasi model oleh aplikasi lain yang disebabkan adanya pemisahan data dengan interface

2. View

View adalah sebuah layer pada MVC yang mengandung keseluruhan detai dari implementasi user interface dengan melibatkan komponen grafis yang menyediakan representasi proses internal aplikasi dan meuntun alur interaksi user terhadap aplikasi

Kelebihan dari View adalah :

  • Memudahkan penggabungan divisi desain dalam development team
  • Ketersediaan multiple interface dalam aplikasi

3. Controller

Controller adalah sebuah layer pada MVC yang menyediakan detai alur program dan transisi layer, dan bertanggung jawab akan penampungan event yang dibuat oleh user dari view dan melakukan update terhadap komponen model menggunakan data dari user.

Kelebihan dari Controller adalah :

  • Komponen view dapat didesain tanpa harus memperhatikan bagian lain secara berlebih
  • Pemisahan jelas antara presentation logic dan business logic

Walaupun banyak kelebihan yang dimilki oleh MVC, namun masih banyak efek samping yang dihasilkan. Efek samping tersebut adalah adanya peningkatan kompleksifitas sehingga pada aplikasi kecil yang tidak membutuhkan loose coupling pada Model yang menjadi blok penghalang dalam pola MVC ini sendiri.

Informatika Lab'z

  1. No comments yet.
  1. No trackbacks yet.