Konten dihapus Konten ditambahkan
39Agung (bicara | kontrib)
k Suntingan Rahmadiani rehan (bicara) dibatalkan ke versi terakhir oleh Georgetop14
Tag: Pengembalian
 
(59 revisi perantara oleh 43 pengguna tidak ditampilkan)
Baris 1:
{{inuse|4 Agustusrefimprove}}
[[Berkas:MVCModelViewControllerDiagram2.pngsvg|rightka|thumbjmpl|400px|Konsep Model-View-Controller]]
'''Model-View-Controller''' atau '''MVC''' adalah sebuah [[metode]] untuk membuat sebuah [[aplikasi web]] dengan memisahkan [[data]] (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). Dalam implementasinya kebanyakan [[Kerangka kerja aplikasi web|kerangka kerja]] (''framework'') dalam [[aplikasi]] website[[web]] adalah berbasis [[arsitektur]] MVC.<ref name="pwp">{{cite web|url=http://www.prowebpro.com/articles/mvc.html|title=MVC (Model View Controller)|last=|first=prowebpro|authorlink=prowebpro|accessdate=2010-07-31}}</ref> MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti [[manipulasi]] data, [[antarmuka pengguna]], dan bagian yang menjadi kontrol dalam sebuah aplikasi [[web]].<ref name="ittelkom">{{cite web|url=http://www.ittelkom.ac.id/library/index.php?view=article&catid=20:informatika&id=518:model-view-controller-mvc&option=com_content&Itemid=15|title=Model View Controller|first=ittelkom|last=|authorlink=ittelkom|accessdate=2010-07-31|archive-date=2018-02-23|archive-url=https://web.archive.org/web/20180223221708/http://www.ittelkom.ac.id/library/index.php?view=article&catid=20:informatika&id=518:model-view-controller-mvc&option=com_content&Itemid=15|dead-url=yes}}</ref>
|url=http://www.ittelkom.ac.id/library/index.php?view=article&catid=20:informatika&id=518:model-view-controller-mvc&option=com_content&Itemid=15
|title= Model View Controller
|first=ittelkom
|last=
|authorlink=ittelkom
|accessdate=2010-07-31
}}</ref>
 
== Sejarah MVC ==
Model View Controller pertama sekali dipublikasikan oleh [[peneliti]] [[Xerox PARC|XEROX PARACPARC]] yang bekerja dalam pembuatan [[bahasa pemogramanpemrograman]] Small Talk[[Smalltalk]] sekitar [[tahun]] 1970-19801970–1980.<ref name="pwp">{{cite web
|url=http://www.prowebpro.com/articles/mvc.html
|title=MVC (Model View Controller)
|first=prowebpro
|last=
|authorlink=prowebpro
|accessdate=2010-07-31
}}</ref>
 
== Bagian dari MVC ==
# '''Model''', Model mewakili [[struktur data]]. BiasanyaModel modelmerupakan berisi fungsi-fungsibagian yang membantubertugas seseoranguntuk dalammengatur, menyiapkan, memanipulasi, dan mengorganisir data (biasanya pengelolaandari [[basis data]]). sepertiTugas yang ia lakukan meliputi memasukkan data ke basis data, pembaruan data, menghapus data, dan lain-lain. Model menjalankan tugasnya berdasarkan instruksi dari controller.
# '''View''', View adalahmerupakan bagian yang mengatur tampilan ke userpengguna. Bisa di katakandikatakan berupa [[halaman]] web.
# '''Controller''', Controller merupakan bagian yang menjembatani model dan view. Controller berisi skripperintah-skrip phpperintah yang berfungsi untuk memproses suatu [[data]] dan mengirimkannya ke halaman web.<ref name="ittelkom">{{cite web
|url=http://www.phpkode.co.cc/artikel.php?id=2
|title= Apa itu MVC pada framework ?
|first=phpcode
|last=
|authorlink=phpcode
|accessdate=2010-07-31
}}</ref>
 
Dengan menggunakan metode MVC maka aplikasi akan lebih mudah untuk dirawat dan dikembangkan. Untuk memahami metode pengembangan aplikasi menggunakan MVC diperlukan pengetahuan tentang [[pemrograman berorientasi objek]] (''Object-oriented Oriented Programmingprogramming'').<ref name="ittelkom"/>
 
== Jenis MVC pada website ==
* '''Server Side MVC''', Server Side MVC biasa terjadi pada aplikasi web [[tradisional]], yang tidak melibatkan ''client side'' seperti Javascript[[JavaScript]], [[Java Appletapplet]], [[Adobe Flash|Flash]], dlldan lain-lain. Server Side MVC menyerahkan keseluruhan proses [[bisnis]] pada [[server]], aplikasi pada sisi userpengguna hanya dapat menerima. MVC jenis ini terkadangkadang-kadang disebut juga dengan nama ''Thin Client''.<ref name="ittelkom"/>
* '''Mixed Client Side and Server Side MVC''', Padapada Mixed Client Side and Server Side MVC 1, client tidak menggunakan model sebagai jembatan untuk melakukan komunikasi pada server, dibandingkan dengan Server Side MVC, arsitektur ini memiliki tingkat kompleksitas yang lebih tinggi karena lebih banyak komponen yang terlibat. Untuk selanjutnya arsitektur ini disebut, dengan Mixed MVC 1. Pada Mixed Client Side and Server Side MVC 2, client menggunakan model sebagai jembatan untuk melakukan [[komunikasi]] pada server, dibandingkan dengan arsitektur MVC yang lain, arsitektur ini memiliki tingkat kompleksitas yang paling tinggi karena lebih banyak komponen yang terlibat, sehingga membutuhkan [[sumber daya]] yang lebih besar pula. Untuk selanjutnya arsitektur ini disebut dengan Mixed MVC 2.<ref name="ittelkom"/>
* '''Rich Internet Application MVC''', Application MVC Rich Internet Application (RIA) disebut juga dengan nama ''Fat Client'', merupakan aplikasi web yang memiliki kemampuan dan fungsi hampir seperti aplikasi [[desktop]]. RIA pada sisi client, memiliki engine[[mesin]] untuk mengambil data yang berada pada server, sehingga pada client terdapat bagian MVC sendiri dan hanya membutuhkan bagian model pada sisi server.<ref name="ittelkom"/>
 
== Kerangka kerja web yang berbasis MVC ==
* [[Laravel]]
* [[Symfony]]
* [[Ruby on Rails]]
* [[CodeIgniter]]
* [[CakePHP]]
* [[Yii]]
 
== Referensi ==
Baris 43 ⟶ 30:
 
[[Kategori:Arsitektur perangkat lunak]]
 
[[bg:Model-View-Controller]]
[[ca:MVC]]
[[cs:Model-view-controller]]
[[de:Model View Controller]]
[[en:Model View Controller]]
[[es:Modelo Vista Controlador]]
[[eo:Modelo-vidigilo-regilo]]
[[fa:مدل-نما-کنترل‌گر]]
[[fr:Modèle-Vue-Contrôleur]]
[[ko:모델-뷰-컨트롤러]]
[[hr:Model–view–controller]]
[[it:Model-View-Controller]]
[[he:Model View Controller]]
[[lv:MVC]]
[[lt:Model View Controller]]
[[mn:Model View Controller]]
[[hu:Modell-nézet-vezérlő]]
[[nl:Model-view-controller-model]]
[[ja:Model View Controller]]
[[no:Model-view-controller]]
[[pl:MVC]]
[[pt:MVC]]
[[ro:Model-view-controller]]
[[ru:Model-View-Controller]]
[[fi:MVC-arkkitehtuuri]]
[[sv:Model-View-Controller]]
[[ta:மாதிரி-காட்சி-கட்டுப்பாட்டகம்]]
[[th:Model-view-controller]]
[[tr:Model-view-controller]]
[[uk:Модель-вид-контролер]]
[[vi:MVC]]
[[zh:MVC]]