Category Archives: MVC JAVA WEB dan MySQL

Belajar MVC Implementasi Java Web

Pengenalan MVC Programming

Asw…wr wb.

Kali ini saya akan membahas tentang MVC Programming, dan pada kesempatan ini saya akan mengenalkan dulu kepada sahabat semua apa itu MVC ?

Bayangkan kalau anda diminta untuk mengembangkan sebuah aplikasi web, sederhana, yang hanya memiliki beberapa lembar spesifikasi kebutuhan. Karena sangat suka mengembangkan web, anda dengan bersemangat langsung menuju kantor dengan spesifikasi kebutuhan di tangan, untuk secepat mungkin mengerjakan aplikasi web tersebut. Pintu ditutup, tanda “Do Not Distrub” dipasang. Tab Facebook dan Twitter ditutup. Dan anda mulai bekerja. Coding dan coding dan coding.

Dua minggu kemudian, aplikasi web yang diminta sudah selesai dikembangkan. Dengan penuh senyuman anda mempresentasikan web yang telah dikembangkan ke klien. Selesai presentasi, klien meminta beberapa perubahan. Bentuk font-nya kurang bagus. Biru di warna latarnya coba digelapkan sedikit. Elemen navigasi terlalu naik. Tolong ditambahkan data pengunjung halaman. Dan masih banyak perubahan lainnya. Anda lalu kembali bekerja untuk memperbaiki aplikasi, dan kemudian melakukan presentasi lagi. Hal ini terjadi berulang kali, sampai akhirnya di akhir proyek, kode aplikasi web anda sudah tidak dapat dikenali.

Kenapa kode tidak lagi dapat dikenali? Ada banyak faktor. Misalnya, kode untuk menampilkan HTML tercampur dengan kode query basis data karena tambahan fitur yang diminta oleh klien pada tengah malam. Waktu itu, anda terlalu mengantuk untuk berpikir jernih dan akhirnya kode tercampur dan sulit diubah lagi karena perubahan di satu tempat akan merusak kode di tempat lain. Mungkin ada kode penanganan kesalahan yang bercampur dengan kode penulisan tampilan, karena anda terburu-buru mengubahnya begitu selesai rapat. Intinya adalah, kode menjadi buruk dan sulit dikembangkan. Kenapa? Karena semua bagian kode sudah tercampur aduk seperti spaghetti.

Untuk menghindari kode agar tidak menjadi spaghetti, maka kita harus menerapkan prinsip Pembagian Fokus (Separation of Concern). Secara singkat, SoC atau Separation of Concern merupakan teknik di mana kita membagi-bagikan kode ke dalam beberapa bagian. Masing-masing bagian kode ini kemudian memiliki tanggung jawabnya masing-masing. Bisa saja ada bagian kode yang khusus menangani basis data. Ada bagian kode yang menangani tampilan. Ada bagian kode yang menghubungkan tampilan dengan basis data.

MVC, atau Model View Controller, merupakan salah satu implementasi prinsip SoC untuk aplikasi yang kita kembangkan. Dalam MVC, kita membagikan bentuk aplikasi dalam tiga bagian utama, yaitu:

  1. Model, yaitu bagian kode aplikasi yang berhubungan dengan basis data.
  2. View, yaitu bagian kode yang berhubungan dengan tampilan ke pengguna.
  3. Controller, yaitu bagian kode yang menghubungkan antara Model dan View.