Memahami Konsep MVC

Share

Perkembangan dunia software yang semakin kompleks menuntut pengembang (developer) software untuk menyikapinya. Dunia web dalam era terakhir ini menjadi solusi aplikasi secara online sehingga dapat diakses dimanapun dan kapanpun. Banyak beragam aplikasi dari mulai yang sederhana hingga kompleks dibuat dengan berbasiskan web (web based aplication). Dengan semakin kompleksnya aplikasi yang dibangun,dibutuhkan sebuah metode efektif dan dinamis yang dapat dimanfaatkan ulang sesuai kebutuhan.

MVC (Model View Controller) adalah sebuah pola yang dapat membangun proyek perangkat lunak lebih efektif karena dilakukan dengan memilah komponen antara Model, View, dan Controller pada bagian – bagian dalam proyek.

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

1. 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 :
a. Proses maintenance aplikasi
Penempatan detail data dan operasinya pada area yang ditentukan (Model) sehingga tidak tersebar pada keseluruhan lingkup aplikasi.
b. 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

Yang harus diperhatikan dalam MVC

  • Peningkatan kompleksifitas sehingga pada aplikasi kecil yang tidak membutuhkan loose coupling pada Model yang menjadi blok penghalang dalam pola MVC ini sendiri.
  • Selain itu dalam pengembangan WEB dengan metode MVC dibutuhkan pemahaman yang kuat tentang konsep OOP (Object Oriented Programming)
  • Dalam pemakaian ulang sumber (source) dari MVC menuntut pemakai untuk menggunakan konsep yang telah ada

 

Bagan MVC

Bagan MVC

 

 

Loading Facebook Comments ...

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Translate »