Home » Kuliah IT » Pemrograman » Konsep MVC Dalam Bahasa Pemrograman

Konsep MVC Dalam Bahasa Pemrograman

by Bagus Dharma Iswara
by Bagus Dharma Iswara

Dalam menggunakan framework website seperti CodeIgniter konsep MVC atau sering disebut dengan konsep Model-View-Controller sangatlah penting bagi seorang developer pemula untuk mengetahui dan memahami konsep MVC ini.

MVC (Model-View-Controller)

MVC merupakan teknik yang digunakan untuk memisahkan suatu aplikasi yang akan kita buat menjadi 3 bagian, yaitu Model, View dan Controller.

MVC ini juga dapat digunakan sebagai code reusability atau biasa disebut dengan code yang dapat digunakan kembali.

Section Artikel

1. Model

Model pada konsep MVC mengacu pada presentasi data yang digunakan aplikasi, seperti database, RSS ataupun data yang diperoleh dari pemanggilan suatu API (Application Programming Interface), serta aksi-aksi dasar pada web aplikasi yang menggunakan operasi CRUD (Create, Read, Update, dan Delete) data.

2. View

View pada konsep MVC merupakan informasi yang digunakan untuk menampilkan data kepada user atau pengguna melalui browser.

View disini biasanya berupa file tipe HTML ataupun kode dengan bahasa program PHP. yang digunakan untuk menyusun template sebuah website.

Di dalam CodeIgniter, komponen View dapat berupa bagian-bagian dari tiap halaman website serta template website.

3. Controller

Controller pada konsep MVC merupakan hal yang penting, Controller berfungsi sebagai Logic untuk menjadi sebuah jembatan antara Model dan View.

Controller akan merespon HTTP Request dari user, kemudian dari request yang diterima controller akan menetukan langkah selanjutnya yang akan dilakukan.

Keuntungan menggunakan Arsitektur MVC Framework

1. Proses pengembangan menjadi lebih cepat

MVC mendukung pengembangan yang cepat, jika kita menggunakan model MVC untuk mengembangkan sebuah aplikasi website maka akan ada kemungkinan 1 programmer dapat mengerjakan bagian tampilan atau User Interface (UI), sementara programmer lainnya dapat mengerjakan pada bagian pembuatan logika bisnis pada aplikasi website.

Dengan cara ini aplikasi dapat dikembangkan dengan menggunakan model MVC dapat diselesaikan lebih cepat daripada aplikasi yang tidak dikembangkan dengan model MVC.

2. Kemampuan Untuk Memberikan Banyak Tampilan

Pada model MVC kita dapat membuat beberapa tampilan untuk sebuah model.

Sekarang terdapat banyak peningkatan permintaan untuk cara baru dalam mengakses aplikasi dan oleh sebab itu maka pengembangan menggunakan model MVC akan menjadi solusi yang baik.

Akan tetapi pada metode ini, terdapat batasan pada duplikasi kode karena memisahkan data dan logika bisnis dari tampilan.

3. Mendukung Teknik Asynchronous

Model MVC ini juga dapat berintegrasi dengan Framework JavaScript. Aplikasi MVC dapat bekerja dengan file PDF, situs khusus pada browser dan juga pada desktop widget.

Arsitektur MVC juga mendukung sebuah teknik asynchronous dimana dapat membantu developer untuk mengembangkan aplikasi yang ditampilkan menjadi sangat cepat.

4. Modifikasi Tidak Mempengaruhi Seluruh Model

Pada aplikasi website apapun, tampilan antarmuka pengguna cenderung lebih sering berubah. Kita sebagai pengembang sebuah aplikasi website pasti sering melakukan banyak perubahan seperti : mengubah font, tata letak atau layout layar, mengubah warna dan menambahkan dukungan perangkat baru untuk ponsel ataupun table.

Menambahkan tipe tampilan baru sangat mudah dengan menggunakan pola MVC karena pada bagian Model tidak bergantung pada bagian tampilan. Oleh karena itu, setiap perubahan dalam model tidak akan mempengaruhi keseluruhan arsitektur pada aplikasi.

5. Model MVC Mengembalikan Data Secara Langsung

MVC disini dapat mengembalikan data tanpa menerapkan pemformatan apapun atau secara langsung.

Oleh karena itu, komponen yang sama dapat digunakan dan dipanggil untuk digunakan dengan antarmuka apapun. Contohnya adalah semua jenis data dapat diformat dengan HTML, tapi dapat juga di format dengan Macromedia Flash dan Dream Viewer.

6. Platform Pengembangan yang SEO Friendly

Platform MVC mendukung pengembangan halaman website ataupun aplikasi website yang SEO Friendly. Platform ini sangat mudah untuk mengembangkan URL yang SEO Friendly untuk menghasilkan lebih banyak viewer atau kunjungan dari aplikasi tertentu.

Arsitektur pengembangan ini biasanya digunakan pada aplikasi Test-Driven Development. Bahasa scripting seperti JavaScript dan jQuery dapat diintegrasikan dengan MVC untuk mengembangkan aplikasi website yang kaya akan banyak fitur.

Dengan demikian, pola model MVC sangat jelas merupakan pendekatan yang bagus bagi para pengembang untuk membangun aplikasi website.

Kerangka pada MVC sangat mudah diimplementasikan karena menawarkan banyak keuntungan di atas. Proyek yang dikembangkan dengan bantuan model MVC dapat dengan mudah dikembangkan dengan pengeluaran yang lebih sedikit dan juga dalam durasi waktu yang lebih singkat.

Kerugian Menggunakan Arsitektur MVC Framework

1. Tampilan (View) Sangat Bergantung pada Controller dan Model

Tidak ada satu sumber pun untuk memperbaharui tampilan atau view, jika kita ingin memperbarui User Interface membutuhkan data (misalkan melalui database untuk menampilkan data yang ada pada database) data ini diperoleh dari Model, kemudian jika kita ingin menampilkan suatu aksi untuk berpindah ke halaman lainnya kita membutuhkan sebuah Controller.

2. Model Melakukan Terlalu Banyak Pekerjaan

Model pada MVC melakukan terlalu banyak hal mulai dari mendapatkan data dari database, hingga memberikan informasi kepada Controller apakah model tersebut berhasil mendapatkan data dari database ataupun tidak, serta menyiapkan hasil yang didapatkan untuk ditampilkan pada View.

3. Kompleksitas Yang Tinggi Untuk Mengembangkan Aplikasi

Pola MVC memiliki tingkat kompleksitas yang cukup tinggi secara langsung dan darinya dapat meningkatkan kompleksitas pada solusi ini. Penggunaan metode arsitektur dengan pola MVC juga menjadi lebih sulit untuk di-debug.

Kesimpulan

Penggunaan framework MVC sangat membantu banyak programmer baik itu programmer berbasis web, desktop, ataupun mobile. Dengan menggunakan framework MVC biasanya kita akan lebih terbantu untuk hal-hal seperti : query database, manajemen source code, validasi data, keamanan data, dan lainnya.

Walaupun begitu, melakukan coding dari awal tetap diperlukan ketika kita belajar pemrograman. karena dengan melakukan coding dari awal inilah kita dapat memahami konsep dan basic dari pemrograman, kalau kita langsung menggunakan sebuah framework berbasis MVC kemungkinan besar kita akan kebingungan karena akan banyak mengenai berbagai macam konsep Pemrograman Berbasis Objek seperti inheritance, override, abstraction.

Setelah kita memahami konsep dan basic pemrograman ini baru kita dapat beralih menggunakan framework berbasis MVC.

Terakhir, walaupun penggunaan framework berbasis MVC memberikan cukup banyak keuntungan, namun kalau kita menggunakan framework ini secara asal-asalan maka akan berdampak terbalik yang awalnya memberikan keuntungan menjadi kerugian untuk kita seperti website aplikasi yang dibuat akan menjadi lebih berat untuk dijalankan.

You may also like