Institutional Repository | Satya Wacana Christian University: Analisis Framework MVC 3.0 dan Active Record pada Aplikasi Properti Berbasis Web T1 672007236 BAB II

Bab 2
Tinjauan Pustaka
2.1 Penelitian sebelumnya
Pada penelitian sebelumya yang berjudul “Analisis Performansi
Framework Prado Dan CakePHP Pada Aplikasi Web Ajax” dilakukan
pembahasan mengenai perbandingan performa dari framework Prado
dan CakePHP. Perbandingan dilakukan dengan aplikasi web dengan
proses CRUD (Creat, Read, Update, Delete). Dari hasil analisis
terlihat performa dari CakePHP jauh lebih baik daripada performa
dari framework Prado. Hal ini disebabkan karena framework Cake
PHP menggunakan kelas Helpers, sedangkan framework Prado
menggunakan komponen Active Control. (Firdaus, Maharani, 2008).
Penelitian lain yaitu berjudul ” Optimasi Aplikasi Web Berbasis
Framework Symfony dengan Tweak View dan Tweak Chache”. Dalam
penelitian ini dilakukan pembahasan mengenai uji performa dari
framework Symfony. Uji performa dilakukan dengan2 tahap. Pertama
disimulasikan pada 2 bandwidth environment: dial-up 56 Kbps
(sampel slow connection), dan DSL/Cable 256 kbps (sampel average
connection). Simulasi bandwidth environment menggunakan addons
Throttle. Dan kedua dilakukan dengan keadaan browser bebas dari
cache sehingga tidak mempengaruhi hasil uji performa. Hasil uji

menunjukkan dengan adanya proses Tweak ini performa dari
framework menjadi cepat mencapai 99,26% dan transfer rate
mencapai 88.05% dari sebelumnya.( Mayang Sari, dkk, 2010).

5

6

Pada penelitian ini membahas tentang analisis framework
dengan mempergunakan Framework MVC 3.0 dan Active Record.

Arsitektur MVC
MVC adalah singkatan dari Model, View, Controller, yang
merupakan sebuah arsitektur untuk membuat sebuah program.
Arsitektur ini menekankan kepada pembagian dari komponenkomponen program menjadi tiga bagian utama yaitu Model, View, dan
Controller. Diagram dalam Gambar 2.1 memberikan gambaran
konseptual tentang arsitektur MVC (Suhanto, 2008).

Gambar 2.1 Model Arsitektur MVC (Suhanto, 2008)


Interaksi user dengan program digambarkan dengan arah
panah besar yang menuju View. Kemudian View memanggil
Controller. Selanjutnya Controller akan membuat atau memanipulasi
Model. Model ini akan diberikan kepada View untuk ditampilkan
kepada user. Dengan demikian tugas View adalah menangani tampilan
program dan interaksi antara user dengan program. Controller
melakukan koordinasi antara View dan Model. Sedangkan Model
adalah bagian yang bekerja di belakang layar untuk memenuhi

7

permintaan user dalam sebuah interaksi. Tujuan dari pembagian
program ke dalam tiga bagian besar ini adalah untuk memisahkan
fokus perhatian, tanggung jawab, dan logic ke dalam bagian masingmasing. View hanya fokus kepada tampilan dan menangani interaksi
dengan user. Model hanya fokus kepada manipulasi obyek-obyek dan
untuk memenuhi skenario sebuah proses bisnis. Sedangkan Controller
menerima input dari View, membuat dan memanipulasi Model, lalu
memberikan Model kepada View untuk ditampilkan ke user. Cara
mudah untuk memahami arsitektur MVC ini adalah dengan
menggunakan analogi organisasi bisnis dan peran yang terdapat di

dalamnya. Sebuah organisasi bisnis biasanya memiliki staf marketing,
mandor, dan staf operasional. Staf marketing melakukan segala upaya
untuk memikat calon pelanggan. Tugasnya adalah „menjual‟ produk
kepada calon pelanggan. View dalam MVC ibarat staf marketing ini.
Tugasnya adalah „menjual‟ dengan memberikan presentasi yang
menarik kepada user. Peran lain yang terdapat dalam sebuah
organisasi bisnis adalah staf produksi yang bekerja di belakang layar
memenuhi target yang telah ditetapkan untuk bisa memenuhi
permintaan pelanggan. Pekerjaan staf produksi tidak tampak oleh
pelanggan itu sendiri. Staf produksi juga tidak bertanggung jawab
untuk langsung bertemu dengan pelanggan (Suhanto, 2008).
Model dalam MVC ibarat staf produksi. Tugasnya adalah
„bekerja‟ dengan memberikan segala daya dan upayanya untuk
memberikan hasil. Peran terakhir dalam sebuah organisasi bisnis
adalah supervisor yang mengurusi manajemen antara staf marketing
dan staf produksi. Berdasarkan masukan dari staf marketing,
supervisor menetapkan target produksi yang kemudian akan
dikerjakan oleh staf operasi. Supervisor kemudian mempertemukan

8


antara staf produksi dan staf marketing untuk melakukan koordinasi
sebelum produk-nya dipresentasikan kepada pelanggan. Setelah itu,
supervisor kemudian memerintahkan staf marketing untuk melakukan
presentasi produk kepada calon pelanggan (Suhanto, 2008).
Controller dalam MVC ibarat supervisor. Tugasnya adalah
melakukan manajemen dan koordinasi kerja antara View dan Model.
Hubungan

ketiga

komponen

Model,

View,

dan

Controller


menciptakan dependensi antar komponen. View bergantung kepada
Model, tetapi Model tidak bergantung kepada View. Designer View
perlu mengetahui bagaimana struktur data dari Model untuk bisa
menampilkan Model tersebut dengan benar dalam View, sebaliknya
developer yang mengembangkan Model tidak perlu tahu sama sekali
bagaimana bentuk tampilan dari Model tersebut. Controller dan View
saling bergantung satu sama lain. View memerlukan Controller untuk
„meneruskan‟ input dari user ke Model, sedangkan Controller
memerlukan View untuk meng-update tampilan setelah Model selesai
dengan tugasnya. Controller bergantung kepada Model karena perlu
memanggil Model dan memberikannya kepada View. Sebaliknya
Model tidak bergantung kepada Controller. Dengan demikian,
arsitektur MVC memberikan pemisahan tugas dan tanggung jawab
yang jelas antara Model, View, dan Controller. Sehingga developer
sesuai dengan keahliannya bisa memusatkan perhatian kepada logic
proses bisnis di dalam Model. Desain yang bagus dalam grafik dan
tampilan akan memikat user. Kedua komponen tersebut bisa bekerja
dengan harmonis yang diatur oleh Controller. Pemisahan yang jelas
ini juga akan memudahkan pengetesan terhadap masing-masing

komponen (Suhanto, 2008).

9

2.3 Razor View Engine
Razor View Engine merupakan modul plugable yang
menerapkan konsep pemilihan sintak. Secara default ASP.NET MVC
saat ini menggunakan ekstensi .aspx atau .ascx sebagai master
template file ASP.NET Web Forms. Ada pula selain view engine
Razor, yaitu Spark dan NHaml (Guthrie, 2010).
Keunggulan yang dimiliki oleh Razor View Engine saat ini
antara lain :
 Pengurangan dalam penulisan sintak, sehingga memudahkan
proses pembuatan dan pengembangan aplikasi.
 Pengkodean yang terstruktur, sehingga tidak mengganggu blok
kode yang lainnya.
 Mudah untuk dipelajari, karena semua mengambil dari konsep
dasar HTML.
 Tidak menggunakan bahasa baru. Razor View Engine hanya
melakukan pengembangan dari bahasa sebelumnya, yaitu C# (

Visual C# ) dan VB ( Visual Basic ).
Perbedaan utama antara MVC versi sebelumnya (CodeNugget)
dengan MVC 3 yaitu terletak pada penulisan sintak. Sebagai contoh
untuk menampilkan teks “Hello Word” pada ASPX Code nugget
dibutuhkan kurang lebih 5 sintak yang membentuknya, yaitu .
Sedangkan pada Razor View Engine sintak dengan menampilkan text
yang sama hanya dibutuhkan 1 karakter, yaitu @. Perbandingan
penulisan yang sangat signifikan inilah yang membuat Razor View
Engine lebih efisien digunakan dalam penulisan sintak untuk membuat
dan mengembangan aplikasi. Penulisan sintak dapat dilihat pada Kode
Program 2.1 dan 2.2 :

10

Kode Program 2.1 Menampilkan teks Hello dengan Code Nugget (Guthrie, 2010)
1.
2.
3.
4.
5.

6.
7.

Code Nugget Example With .ASPX File

Hello the year is

Checkout
This Product


Kode Program 2.2 Menampilkan teks Hello dengan Razor View Engine
(Guthrie, 2010)
1.
2.
3.
4.
5.
6.
7.


Razor Example

Hello @name , the years is @DateTime.Now.Year

Checkout
This Product


2.4 Active Record
Active record adalah salah satu pendekatan untuk membaca
data dari sebuah basis data. Sebuah tabel atau view dibungkus ke
dalam sebuah kelas sedemikian sehingga sebuah instansi obyek terikat
dengan satu baris tunggal dalam tabel. Setelah obyek dibuat, sebuah
baris baru ditambahkan pada tabel pada saat disimpan. Obyek-obyek
yang dimuat mendapatkan informasi tentang dirinya dari basis data,
ketika sebuah obyek diubah, baris yang berkaitan dalam tabel juga
diubah. Kelas pembungkus mengimplementasikan metode-metode
aksesor untuk setiap kolom di dalam tabel atau view (Hayden, 2006).


11

2.4.1 Active Record Pattern
Active Record Pattern adalah pola desain yang banyak
digunakan untuk aplikasi bentuk-over-data yang memiliki aturan dan
memiliki rasio 1:1 antara obyek bisnis dan tabel database.
Active Record Pattern mewakili satu baris di dalam tabel
database. Active Record Pattern paling ideal saat anda memilki
hubungan 1:1 antara properti obyek bisnis dan "table properti" dan
kebutuhan dari pemetaan data. Dalam hal sesuatu yang sederhana
seperti post (dan obyek domain lainnya) pada dasarnya hubungan 1:1.
Pada saat hubungan antara model domain (model obyek) dan model
relasional, kita tidak membutuhkan pemetaan data.

Gambar 2.2 Active Record Pattern (Hayden, 2006)

12

2.5 Properti
Properti menunjukkan kepada sesuatu yang biasanya dikenal

sebagai entitas dalam kaitannya dengan kepemilikan seseorang atau
sekelompok orang atas suatu hak eksklusif. Bentuk yang utama dari
properti ini adalah tanah, kekayaan pribadi (kepemilikan barang secara
fisik lainnya), dan kekayaan intelektual. Hak dari kepemilikan adalah
terkait dengan properti yang menjadikan sesuatu barang menjadi
"kepunyaan seseorang" baik pribadi maupun kelompok, menjamin si
pemilik atas haknya untuk melakukan segala suatu terhadap properti
sesuai dengan kehendaknya, baik untuk menggunakannya ataupun
tidak menggunakannya, untuk mengalihkan hak kepemilikannya
(Tjahjono,2008).

Dokumen yang terkait

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Aplikasi Layanan Quickrespond pada Polres Purbalingga Berbasis Web dan SMS T1 672004108 BAB II

0 1 13

Institutional Repository | Satya Wacana Christian University: Aplikasi Kuliner Salatiga Berbasis Web Menggunakan Framework Laravel

0 1 1

Institutional Repository | Satya Wacana Christian University: Sistem Informasi Akademik Berbasis Web T1 672004181 BAB II

0 0 10

Institutional Repository | Satya Wacana Christian University: Analisis Framework MVC 3.0 dan Active Record pada Aplikasi Properti Berbasis Web

0 0 11

Institutional Repository | Satya Wacana Christian University: Analisis Framework MVC 3.0 dan Active Record pada Aplikasi Properti Berbasis Web T1 672007236 BAB I

0 0 4

Institutional Repository | Satya Wacana Christian University: Analisis Framework MVC 3.0 dan Active Record pada Aplikasi Properti Berbasis Web T1 672007236 BAB IV

0 0 28

Institutional Repository | Satya Wacana Christian University: Analisis Framework MVC 3.0 dan Active Record pada Aplikasi Properti Berbasis Web T1 672007236 BAB V

0 0 2

Institutional Repository | Satya Wacana Christian University: Analisis Framework MVC 3.0 dan Active Record pada Aplikasi Properti Berbasis Web

0 0 2

T1__BAB II Institutional Repository | Satya Wacana Christian University: Sistem Penelusuran Barang Menggunakan Barcode Berbasis Web T1 BAB II

0 0 4

T0__BAB II Institutional Repository | Satya Wacana Christian University: Perancangan Aplikasi Lelang Online Berbasis Web T0 BAB II

0 0 4