Jika Anda sedang belajar coding, Anda pasti sudah tak asing dengan yang namanya framework. Saat ini hampir semua framework populer, seperti framework laravel, sudah menggunakan konsep MVC untuk pengembangan website.
MVC sendiri merupakan pola desain arsitektur website yang terbagi menjadi tiga bagian, yaitu model, view, dan controller. Konsep ini diyakini bisa mengefektifkan proses pembuatan website.
Nah, seperti apa sih penjelasan lebih detail mengenai MVC? Tenang, kami akan membahasnya di artikel ini pada bab berikutnya. Selain itu, kami juga akan membahas lengkap cara kerja, manfaat, serta beberapa contohnya. Penasaran kan? Yuk simak artikel ini sampai selesai ya.
MVC atau Model View Controller adalah sebuah pola desain arsitektur dalam sistem pengembangan website yang terdiri dari tiga bagian, yaitu:
Dengan konsep MVC ini, website seakan memiliki bagian yang terpisah dan bisa dikembangkan masing-masing. Maka, proses pembuatan website bisa dilakukan lebih cepat karena developer akan lebih fokus pada pengerjaan salah satu bagian saja.
Karena dianggap efektif, konsep MVC banyak diterapkan di berbagai framework. Sebagai contoh, di framework PHP, Laravel, CodeIgniter, Symfony, Yii, dan Zend sudah menggunakan konsep ini.
Oke, setelah mempelajari apa itu MVC, sekarang saatnya memahami bagaimana alur kerja dari MVC. Mari lihat bagan berikut ini:
Alur kerja MVC dalam sistem website sebenarnya cukup sederhana seperti ditunjukkan pada bagan di atas. Namun, kalau penjelasannya masih terlalu teknis, begini analoginya:
Sekarang, anggaplah Anda sedang berada di sebuah restoran. Dalam konsep MVC ini, Anda adalah view, pelayan adalah controller, dan chef adalah model.
Ketika Anda memesan salah satu menu, pelayan akan mencatat pesanan Anda dan memberikannya pada chef. Setelah itu, chef akan mencari bahan yang diperlukan di kulkas (database) dan mulai memasaknya untuk Anda.
Setelah selesai dimasak, chef akan memberikan pada pelayan untuk diantarkan pada Anda.
Nah, seperti itulah cara kerja MVC pada setiap bagiannya. Lebih mudah dipahami?
Ada banyak keuntungan menggunakan framework MVC dalam pembuatan website seperti berikut ini:
Konsep MVC bisa membuat proses pengembangan website lebih cepat. Sebab, MVC membagi website menjadi tiga bagian terpisah. Bagian model dan controller bisa dikerjakan oleh back end developer sementara view bisa dilakukan oleh front end developer dan UI UX tim.
Sebagai contoh, setelah tim UI UX menyelesaikan rancangan desain halaman depan, tim back end dan front end bisa mulai membuat kode pemrograman untuk desain itu. Tim UI UX bisa beralih merancang desain halaman lain misalnya halaman produk.
Untuk memastikan website berfungsi dengan baik, langkah testing perlu dilakukan. Nah, dengan menggunakan kerangka MVC, proses testing bisa dilakukan per bagian yang telah siap, alih-alih menunggu keseluruhan website jadi.
Selain itu, pembuatan dokumentasi dari setiap fitur bisa lebih efisien dan rapi karena proses testing bisa dilakukan per bagian.
Pembagian website oleh MVC membuat developer bisa lebih fokus pada bagian pengembangannya masing-masing. Jadi, mereka bisa lebih cepat menemukan bug dan memperbaikinya.
Semisal, ketika fungsi keranjang pada website toko online tidak berfungsi, kemungkinan kendalanya terletak pada data atau tombol. Nah, kalau ternyata error ditemukan pada tombol (view), bagian front end bisa langsung memperbaiki error tersebut.
Konsep MVC memungkinkan penggunaan script yang lebih terstruktur dan rapi. Hal ini dapat memudahkan tim developer dalam proses pengembangan dan maintenance website.
Anggaplah Anda ingin menambahkan fitur “tambahkan voucher diskon” pada website toko online Anda. Tim developer baik back end maupun front end akan lebih mudah menemukan kode script yang perlu ditambahkan dan diperbaharui.
Rasanya kurang afdol jika pembahasan konsep MVC ini tidak disertai dengan contoh, ya? Nah, ini dia contoh pembuatan form data user di website dengan menggunakan CodeIgniter:
<?php
class M_user extends CI_Model
{
public function insert_data($table, $data)
{
return $this->db->insert($table, $data);
}
}
<?php
class User extends CI_Controller
{
public function add()
{
$this->load->view('user_add');
}
}
<!DOCTYPE html>
<html>
<head>
<title>Membuat Form Tambah User</title>
</head>
<body>
<center>
<h2>Form Tambah Data User</h2>
<form method="post" action="<?= base_url('user/save'); ?>">
<table border="1">
<tr>
<td>Email</td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td>Password</td>
<td><input type="password" name="password"></td>
</tr>
<tr>
<td>Nama</td>
<td><input type="text" name="nama"></td>
</tr>
<tr>
<td colspan="2"><input type="submit" name="kirim" value="Masukkan Data"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
M MVC adalah konsep arsitektur dalam sistem pengembangan website yang terbagi menjadi tiga bagian, yaitu model, view, dan controller.
Model berfungsi untuk berhubungan dengan database agar dapat mengelola, memperbarui, dan menginput data. Lalu, View akan mengatur tampilan supaya lebih mudah dipahami pengguna. Sementara Controller bertugas menghubungkan model dan view.
Dengan konsep MVC ini, ada banyak manfaat yang bisa Anda dapatkan lho! Seperti:
Nah, sekarang Anda sudah memahami bagaimana konsep MVC, bukan? Jadi, sudah siap membangun website dengan konsep MVC dengan framework favorit Anda?
Selamat mencoba!
Dapatkan beragam artikel tutorial, insight dan tips menarik seputar dunia online langsung melalui email Anda. Subscribe sekarang dan raih kesuksesan bersama kami!
Laravel merupakan framework dengan fitur terlengkap. Salah satunya adalah adanya fitur Laravel Mail yang dapat memudahkan Anda mengirim email langsung…
Ancaman kejahatan online terus meningkat. Maka dari itu, jangan bosan untuk terus melindungi website Anda. Salah satunya, dengan selalu mengutamakan…
Pada codeigniter, secara default Anda harus menambahkan index.php untuk mengakses url. Contohnya untuk mengakses halaman artikel harus ditulis seperti ini:…
Anda kaget karena tiba-tiba mendapatkan error phpMyAdmin access denied? Padahal sebelumnya tidak pernah muncul error dengan tampilan kotak merah tersebut…
Ketika menggunakan XAMPP, bisa saja muncul error yang tidak diharapkan. Salah satunya adalah error port 443. Nah, karena port 443…
Pada artikel ini kita akan membahas mengenai perbedaan CHMOD dan CHOWN dan bagaimana cara menggunakannya. Selain itu juga beberapa hal…