Model biasanya berhubungan langsung dengan database untuk View merupakan bagian yang menangani presentation logic. Pada suatu Controller, merupakan bagian yang mengatur hubungan antara bagian Server Side MVC

2.10.1 Model-View-Controller MVC

Model View Control merupakan suatu konsep yang cukup populer dalam membangun aplikasi web, berawal pada bahasa pemerograman Small Talk, MVC memisahkan aplikasi berdasarkan komponen utama membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat tiga jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu :

1. Model biasanya berhubungan langsung dengan database untuk

memanipulasi data , menangani validasi dari bagian controller, namun dapat berhungan langsung dengan bagian view.

2. View merupakan bagian yang menangani presentation logic. Pada suatu

aplikasi webbagian ini biasanya berupa bagian template HTML. Yang diatur oleh controller. View berfungsi untuk menerima dan merepresenasikan data kepada user. Bagan ini tidak memiliki akses lansung terhadap bagian model.

3. Controller, merupakan bagian yang mengatur hubungan antara bagian

model dan bagian view, controller berfungsi untk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi. Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan sesuai dengan kemampuan developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer dalam menangani variabel-variabel yang akan ditampilkan. MVC merupakan pattern yang tidak dapat langsung dipetakan menjadi kode, MVC lebih merupakan suatu rancangan konseptual atau paradigma. Seiring dengan semakin banyaknya penggunaan client side scripting, ada 3 jenis MVC yang mungkin terjadi pada suatu aplikasi web yaitu :

1. Server Side MVC

Server Side MVC biasa terjadi pada aplikasi web tradisional, yang tidak melibatkan client side seperti Javascript, Java Applet, Flash, dll. Server Side MVC menyerahkan keseluruhan proses bisnis pada server, aplikasi pada sisi user hanya dapat menerima. MVC jenis ini terkadang disebut juga dengan nama Thin Client.

2. Mixed Client Side and Server Side MVC