21 Feb 2013

TUGAS P H P F R A M E W O R K


1.     Konsep M V C (Model-View Controller)

§  Pengertian :
adalah sebuah metode untuk membuat sebuah aplikasi dengan memisahkan data (Model) dari tampilan (View) dan cara bagaimana memprosesnya (Controller). Dalam implementasinya kebanyakan framework dalam aplikasi website adalah berbasis arsitektur MVC. 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.

§  Sejarah MVC  :
Model View Controller pertama sekali dipublikasikan oleh peneliti XEROX PARC yang bekerja dalam pembuatan bahasa pemrograman Smalltalk sekitar tahun 1970-1980

§  Bagian dari MVC :
1.       Model
merupakan bagian yang didesain untuk bekerja dengan database. Model bisa juga diartikan sebagai bagian yang digunakan untuk membuat semacam prototipe data. Bagian model ini biasanya berisi berbagai query yang dialamatkan pada sebuah database. Berbagai query tersebut disesuaikan dengan kebutuhan data yang akan diolah menjadi controller, sebelum akhirnya ditampilkan menggunakan view. File-file model diletakkan di dalam folder application/models
2.    View,
adalah bagian yang mengatur tampilan ke pengguna. Bisa di katakan berupa halaman web.
3.     Controller
merupakan bagian yang digunakan untuk menempatkan fungsi-fungsi logika pengolah data yang telah diperoleh dari model (atau sumber lainnya), kemudian ditampilkan melalui (atau tanpa) view. Melalui controller inilai request HTTP akan diolah.Nantinya nama kelas dan method beserta parameternya yang terdapat dalam controller akan digunakan dalam pengasosiasian URI sehingga pemahaman tentang controller ini mutlak dibutuhkan. File controller dibawah folder application/controllers


§  Jenis MVC pada website :
·         Server Side MVC, Server Side MVC biasa terjadi pada aplikasi web tradisional, yang tidak melibatkan client side seperti Javascript, Java applet, Flash, dan lain-lain. Server Side MVC menyerahkan keseluruhan proses bisnis pada server, aplikasi pada sisi pengguna hanya dapat menerima. MVC jenis ini kadang-kadang disebut juga dengan nama Thin Client.

·         Mixed Client Side and Server Side MVC, Pada 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 .

·         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 mesin untuk mengambil data yang berada pada server, sehingga pada client terdapat bagian MVC sendiri dan hanya membutuhkan bagian model pada sisi server.