Sunday, May 12, 2013

Apa itu MVC ?


Hello agan-agan pengunjung BasiTapiHot !!!
                Yang masih setia berkunjung walau blog ini jarang update, saya ucapkan banyak terimakasih. Meskipun hitung-hitungan diatas kertas traffic alexa menurun, (haha sok banget ngomongnya) tetap bagaimanapun saya ucapkan terimakasih atas kunjungannya kepada blog ini dan semoga kalian mendapatkan apa yang kalian cari disini, seputar RF, BF2 dan sedikit tentang programming tentunya, haha J
                Nah sudah cukup basi-basi nya kembali saya akan mempostingan tentang materi Programming. Masih ada kaitannya dengan postingan sebelumnya (kaitannya dengan tugas) cuma kalau yang ini sedikit agak ngarti hehe. Kali ini kita akan bahas tentang MVC. MVC ini sangat lekat dan dikenal di dunia per codingan, hehe J

Apa sih MVC itu ? MVC adalah sebuat metode untuk membuat aplikasi dengan memisahkan data (Model), tampilan (View) dan cara bagaimana memprosesnya (Controller).

Itu yang saya kutip dari wikipedia,  kira-kira jika digambarkan seperti ini :

Lalu implementasi sederhana nya bagaimana ?
Saat kalian bikin program, ambil kasar lah 3 orang, satu orang di bagian view, model, dan controller. Kerjaan lebih fokus karena kalian tidak harus menunggu coding dari teman, meskipun pada akhirnya harus disatukan tapi itu konteksnya beda lagi. Hal yang sering terjadi kalau biasa kita ngoding misal ngerjain TA nih, semua berkutat pada Model atau satu orang kebagian satu form, full dengan data, tampilan dan penghubungnya sehingga nantinya data akan sulit singkron ketika digabung dengan yang lain.
Atau ambil contoh lain misal satu ngerjain koneksi ke DB nya, satu ngerjain ngolah data nya, memang tidak ada yang salah dengan itu. Tapi pada akhirnya akan terjadi saling ‘menunggu’ antara satu programmer dengan programmer lain, contohnya mau ngisi data mesti nunggu ada koneksi DB nya dulu. Belum lagi mikirin tampilannya yang belum jadi. Dan kita sering sekali menghilangkan titik berat pada tampilan, “Ah, tampilan mah terakhir lah yang penting program nya jalan” . memang benar program harus jalan, tapi kalau tampilannya tidak menarik yaa kurang memuaskan lah hasilnya. Jadi lewat MVC ini diharapkan setiap orang bisa fokus  pada bagiannya masih-masing.
Beberapa garis besar yang saya tangkap dari MVC ini adalah :
      -          Usahakan dalam view tidak ada logika, artinya pemrosesan data dilakukan pada Controller dan  penyediaan data dilakukan oleh Model
      -          View haruslah Modular, contohnya anda punya Form untuk menampilkan Data Siswa, terus mesti juga bisa menampilkan Data Guru. Sebisa mungkin menggunakan Form yang sama, yang diganti hanyalah Controller nya.
      -          Kalau di ibaratkan sebuah Restoran, koki adalah Model nya, Pelayan adalah Controller nya, View adalah pelanggannya. Bisa dilihat ketika pelanggan memesan makanan tertentu, maka pelayan lah yang akan bekerja untuk mengambilkan makanan yang dipesan pelanggan dari dapur koki.
      -           Sebetulnya bisa juga dari View langsung ke Model, misal kalau dalam Form, data dan tampilan nya disatukan source code nya tapi itu bukanlah MVC. Ditambah nanti akan menyulitkan proses debugging ketika kita mencari kesalah program.

Nah itu sekilas hasil pemikiran saya yaang belum tentu benar :D
Tapi setidaknya itulah yang saya pahami dari MVC ini.
               
Sekilas MVC kelihatan­nya merepotkan karena kita harus menulis kode lebih banyak tapi keun­tungan­nya adalah kode kita lebih main­tainable karena kita bisa meng­ubah salah satu bagian tanpa harus meng­ubah bagian yang lain.
Seba­gai con­toh, misal­nya kita mem­buat aplikasi A yang memp­roses data ber­for­mat XML namun kemudian kita diharuskan meng­gunakan data ber­for­mat JSON. Dalam kasus seperti ini, kita cukup meng­ubah Model tanpa harus meng­ubah bagian yang lain.
MVC juga mem­per­mudah debug­ging karena kita bisa mem­per­kirakan bagian mana yang ber­masalah tanpa harus mem­bong­kar seluruh kode yang sudah kita buat.
Jadi secara umum, keun­tungan MVC jauh lebih besar daripada kerepotan yang ditim­bul­kan­nya. 


Nah, sekian postingan kali ini semoga bermanfaat. kalau ada salah maaf ya, maklum lagi belajar juga :)
Nantikan update Selanjutnya !!!

sumber : sumber1, sumber2.

kalau berkenan, klik iklannya ya gan ;-)

No comments:

Post a Comment

Ayo dong komentar postingan ini, biar bikin semangat postingan lagi. Sekalian juga bisa diskusi kan tentang ide dan gagasan disini