Page 1 of 1

[Ask] Jurnal MVC

Posted: Sun Nov 27, 2011 5:34 pm
by saia
Ada yg tahu konsep OOP MVC dalam framework yii?? kalo ada teman-teman yang punya referensi jurnal atau semacamnya, please share dong :-&

Re: [Ask] Jurnal MVC

Posted: Sun Nov 27, 2011 8:22 pm
by walet
saia wrote:Ada yg tahu konsep OOP MVC dalam framework yii?? kalo ada teman-teman yang punya referensi jurnal atau semacamnya, please share dong :-&

MVC itu Model, View, Controller, itu dasar dari pemrograman yang berbasiskan user interface. Tujuannya untuk memisahkan logic antara viewer, data dan controller.

Silakan lihat Code Igniter untuk contoh mudah MVC.

1. Model gampangannya adalah data container, isinya seperti variabel2, data base, dll
2. Controller adalah interface yang digunakan programmer untuk mengontrol data (model) yang nantinya akan ditampilkan di View. Misalnya memasukkan data ke data base, mengedit, menghapus data.
3. View berisi logik untuk menampilkan data ke user, misalnya dari data base ke bentuk tabel.

Walaupun namanya MVC tp kadang2 dimodifikasi sesuai dengan perusahaan, misalnya di microsoft MFC ada document view framework yang bisa menampilkan multiple view document.

Liat aja overview code igniter di:

http://codeigniter.com/tutorials/watch/intro/

Re: [Ask] Jurnal MVC

Posted: Tue Nov 29, 2011 12:34 am
by saia
@walet

saya tahu apa itu MVC bro, maksud saya bro walet, implikasinya pada framework yii. Permasalahan yg sejauh saya tau, penggunaan pemrograman procedural kurang efektif jika diterapkan pada MVC. apa karena penggunaan MVC supaya lebih secure, seperti aplikasi web CMS??

Re: [Ask] Jurnal MVC

Posted: Tue Nov 29, 2011 1:11 am
by walet
saia wrote:@walet

saya tahu apa itu MVC bro, maksud saya bro walet, implikasinya pada framework yii. Permasalahan yg sejauh saya tau, penggunaan pemrograman procedural kurang efektif jika diterapkan pada MVC. apa karena penggunaan MVC supaya lebih secure, seperti aplikasi web CMS??
Bukan masalah secure tapi masalah konsep dari OOP dan pemrograman pada umumnya.
Disini adalah dependency.

Melihat sejarah jaman dulu pada saat bahasa masih assemly, kita sekarang menyebutnya monolith atau satu kesatuan.
Kalau program membesar akan susah sekali dikembangkan karena ketergantungan satu sama lain sangat besar.
Maka diciptakanlah Object Oriented Programming dimana tugas suatu logic dipisah2kan menjadi kecil.

CARA MEMECAHKAN SUATU MASALAH BESAR ADALAH:

1. MEMECAH MASALAH MENJADI KECIL
2. MEMBUAT MASALAH ITU TIDAK SALING KETERGANTUNGAN SAMA SEKALI

Maka sekarang banyak sekali konsep untuk memecahkan masalah (kode software) menjadi lebih kecil2, seperti komponen (dulu 1 file exe besar sekarang beberapa dll atau component).
Komponen-komponent yang sangat banyak biasanya memiliki:

POLA/PATTERN

Pola2/Pattern yang sangat banyak ini dikelompokkan oleh:

GOF: Gank of Four

Erich Gamma, Richard Helm, Ralph Johnson and John Vlissides with a foreword by Grady Booch.

menjadi buku:

Image
http://en.wikipedia.org/wiki/Design_Patterns_(book)

Dalam pengembangan software ada banyak sekali konsep yang diikuti oleh GOF seperti meminimalkan dependency.
Dengan adanya minimalisasi pada dependency maka software akan:
1. Mudah dikembangkan
2. Memungkinkan operating system atau machine agnostic.

Salah satu pattern bikinannya adalah MVC.

Lihat contoh dibawah ini:

Image


Kita bisa melihat pemisahan antara View dan Model.
Dengan adanya pemisahan tersebut memungkinkan kita membuat 1 Software dengan misalnya:
1. Viewernya adalah wxWidget, QTframework
2. Model dengan Data Basenya mySQL atau MS SQL, POSTGRE dll.

Kalau tidak ada pemisahan seperti itu ketergantungan antara View dan Model akan sangat besar, dan data internalnya sangat mungkin banyak ketergantungan.
Tentu saja dengan demikian sangat mudah porting GUI dari suatu operating system ke operating system yang lain. Dimana2 kan C++ sama aja. Cuma GUInya saja lain.

Dengan adanya pemisahan maka akan ada:

ISOLASI!!!

Dengan adanya isolasi maka misalnya ada bug pada salah satu komponen, akan lebih mudah dideteksi.

Kalau buat website, konsep itu untuk menghindari ketergantungan antara viewer dan data.

Walaupun Viewer bisa melihat Model seperti dibawah ini:

Image

Namun Viewer tidak diperbolehkan mengubah data secara langsung, Controllerlah yang boleh mengubah data
Tugas Viewer hanya menampilkan data, jadi cuma read only.

Re: [Ask] Jurnal MVC

Posted: Tue Nov 29, 2011 1:41 am
by saia
hmmm ..... terkesan rumit, cuma klo saya lihat aplikasi yg saya buat, saya jadi bingung sendiri mana model, view, en controller.

begini deh, langsung aja ke permsalahan yg saya alami sekarang

saya lagi bikin aplikasi, emm sistem aplikasi tepatnya, dimana ada 1 aplikasi dan 1 web cms.

aplikasi yg dibuat itu mirip-mirip IDM, saya bikin pke C# 2008
jadi, saya bikin 4 modul beserta 4 class fungsi
1 class buat convert size filedata
1 class buat QoS alias paket transfer data
1 class buat IP Protocol Provider (FTP dan HTTP, HTTPS saya ga pake)
1 class buat resource location (penempatan lokasi data dan penampilan data dalam aplikasi)

modul yg saya bikin, modul donwload, search, web search dan modul-modul perintah sederhana, seperti delete, resume, dan stop.

yg manakah model, view dan controller??
asumsinya saya, view menunjukan list data yg terdownload
controller adalah event klik yg dilakukan user
model - modul dengan class2nya

saya salah ato ga nih?? :-&

Re: [Ask] Jurnal MVC

Posted: Thu Dec 01, 2011 3:54 am
by walet
saia wrote:hmmm ..... terkesan rumit, cuma klo saya lihat aplikasi yg saya buat, saya jadi bingung sendiri mana model, view, en controller.

begini deh, langsung aja ke permsalahan yg saya alami sekarang

saya lagi bikin aplikasi, emm sistem aplikasi tepatnya, dimana ada 1 aplikasi dan 1 web cms.

aplikasi yg dibuat itu mirip-mirip IDM, saya bikin pke C# 2008
jadi, saya bikin 4 modul beserta 4 class fungsi
1 class buat convert size filedata
1 class buat QoS alias paket transfer data
1 class buat IP Protocol Provider (FTP dan HTTP, HTTPS saya ga pake)
1 class buat resource location (penempatan lokasi data dan penampilan data dalam aplikasi)

modul yg saya bikin, modul donwload, search, web search dan modul-modul perintah sederhana, seperti delete, resume, dan stop.

yg manakah model, view dan controller??
asumsinya saya, view menunjukan list data yg terdownload
controller adalah event klik yg dilakukan user
model - modul dengan class2nya

saya salah ato ga nih?? :-&
1 class buat convert size filedata
1 class buat QoS alias paket transfer data
1 class buat IP Protocol Provider (FTP dan HTTP, HTTPS saya ga pake)

Ini semua sih ada di model karena semua berhubungan dengan akses, manipulasi data.

1 class buat resource location (penempatan lokasi data dan penampilan data dalam aplikasi)
Kalau Viewnya adalah hasil input output htmlnya.

Controllernya adalah mengatur input output dengan user. Semacam bridge antara View dan Controller.
modul yg saya bikin, modul donwload, search, web search dan modul-modul perintah sederhana, seperti delete, resume, dan stop.
Itu akan berhubungan dengan controller.

Controller mengatur input output dari user lalu memutuskan apa yang harus dilakukan, kalau mau manipulasi data, suruh ke model.
Kalau mau menampilkan hasil yang ada di model, itu tugas View.

Kalau pakai C# sih dah ada frameworknya, cari aja ASP MVC, tp gua gak pernah pakai.

Re: [Ask] Jurnal MVC

Posted: Fri Dec 02, 2011 11:46 pm
by saia
walet wrote:
1 class buat convert size filedata
1 class buat QoS alias paket transfer data
1 class buat IP Protocol Provider (FTP dan HTTP, HTTPS saya ga pake)

Ini semua sih ada di model karena semua berhubungan dengan akses, manipulasi data.

1 class buat resource location (penempatan lokasi data dan penampilan data dalam aplikasi)
Kalau Viewnya adalah hasil input output htmlnya.

Controllernya adalah mengatur input output dengan user. Semacam bridge antara View dan Controller.
iya, saya baru ngeh'. class yg saya sebut cuma contoh doank bro, sebenernya banyak banget class-classnya :lol:
Itu akan berhubungan dengan controller.

Controller mengatur input output dari user lalu memutuskan apa yang harus dilakukan, kalau mau manipulasi data, suruh ke model.
Kalau mau menampilkan hasil yang ada di model, itu tugas View.

Kalau pakai C# sih dah ada frameworknya, cari aja ASP MVC, tp gua gak pernah pakai.
C# belum ada youtube grabber, browser wrapper nya aja masih sering bikin hang app. intinya ga enak make "develop" program, saya mah terima jadinya aja bro :lol:

Re: [Ask] Jurnal MVC

Posted: Sat Dec 03, 2011 2:10 am
by walet
saia wrote: C# belum ada youtube grabber, browser wrapper nya aja masih sering bikin hang app. intinya ga enak make "develop" program, saya mah terima jadinya aja bro :lol:
Kan browser wrappernya bisa pakai Mozilla punya gak harus class WebBrowser.
Kalau mau jadi ya cari2 aja CMS.