Pages

Rabu, 21 November 2012

WEB Framework


Web application framework adalah suatu software framework yang didesain untuk mendukung pengembangan web dinamis, aplikasi web dan web service. (wikipedia)
Arsitektur :
1. MVC (Model View Controller) : memisahkan data model dengan aturan bisnis dari user interface.
1.a)Push-based : do the required processing "push" the data. Contoh : Struts, Django, Ruby on Rails dan Spring MVC
1.b)Pull-based : start with the view layer "pull" results from multiple controllers as needed. Contoh : Struts2, Tapestry, JBoss Seam, Wicket dan Velocity.
2. CMS (Content Management Systems) : aplikasi web yang bersifat instantdantemplating. Contoh : Drupal, Joomla, XOOPS, Plone, TYPO3, dll.


Sekilas MVC
MVC adalah pembagian arsitektur aplikasi menjadi tiga kelompok:
1. Model –mengandung fungsi-fungsi untuk berkomunikasi dengan database, seperti : mengambil data produk dengan id tertentu, hapus produk, menyimpan komentar pada blog.
2. View –kode yang mengeluarkan HTML yang akan dilihat oleh pengunjung.
3. Controller –kode yang memeriksa input dari pengunjung dan memilih apa yang harus dilakukan.

Bila kita melihat MVC dalam cara pandang ‘separate logic from view’, logicnya ada di model & controller, sedangkan view menjadi view. Kenapa sih harus dipisah ? Tentu saja untuk mempercepat & mempermudah proses pengembangan perangkat lunak.


Ilustrasi cara kerja aplikasi MVC adalah seperti ini :
1. Pengguna mengklik sebuah link untuk membuka shopping cart. Misalnya linknya seperti ini : myblondestore.com/index.php/shoppingcart/view
2. HTTP request ini akan dikirim ke server dan diperiksa oleh sebuah file index.php dan dipilah-pilah.
3. Misalnya dengan modifikasi URL, diketahui bahwa shoppingcart adalah nama obyek CONTROLLER dan view adalah fungsi yg digunakan untuk menampilkan obyek tadi.
4. Maka dipanggilah file CONTROLLER shoppingcart dengan fungsi view
5. Pada CONTROLLER ini ada satu baris kode yang memanggil MODEL bernama query yang ada di file lain. Query ini bertugas menampilkan barang-barang yang dipilih oleh pelanggan.
Data hasil query oleh kode di CONTROLLER akan diperiksa dan dikirimkan ke file-file php yg bertugas menampilkan data hasil query ini. File-file PHP yg bertugas menampilkan data ini disebut VIEW.
Informasi selengkapnya ada di :

Gambar. Proses MVC

Fitur
1. Security: berhubungan dengan authentication dan authorization
2. Database access and mapping: berhubungan dengan pengaksesan database.
3. URL mapping : pemetaan URL dari URL “real” ke URL “virtual”. Contoh : /page.cgi?cat=science&topic=physicsmenjadi /page/science/physics.
4. Web template system : minimalisasi coding.
5. Caching : dokumen/data disimpan sebagai cache untuk meminimalkan bandwidth.
6. Ajax (Asynchronous JavaScript and XML) : membuat aplikasi web lebih interaktif.
7. Automatic configuration : konfiggurasi otomatis pada objek atau komponen.
8. Web services : berhubungan dengan integritas data dan aplikasi.

Teknologi
Bahasa Pemrograman
-Java
-C# and VB.NET
-ColdFusion
-PHP
-Perl, Python, Ruby, Lua-Common Lisp
-TCL
-Smalltalk
-JavaScript

Sistem Operasi
-Windows
-Linux
-Mac


Tips Singkat Memilih PHP Framework
Ketika kita dihadapkan pada sebuah project web yang memang memerlukan pengerjaan dari awal dan CMS yang ada tidak memenuhi requirement, pilihannya adalah:
1. buat semuanya dari awal, termasuk fungsi-fungsi, class-class dsb
2. menggunakan fungsi-fungsi dan class-class yang udah ada
3. menggunakan PHP framework

Tips :
1. Jangan hanya berdasarkan fitur tapi sesuaikan dengan kebutuhan project dan kemampuan individu
2. Seberapa banyak waktu yang dimiliki
3. Dokumentasi & Komunitas
4. Third Party Support
5. Jangan terpengaruh pendapat orang lain, karena kebutuhan masing-masing individu berbeda-beda.


Download PHP Framework
1. CodeIgniter 1.5.4 (codeigniter.com/download.php)
2. Prado 3.1.1 (pradosoft.com/download)
3. PHPDevShell 0.7.0 (sourceforge.net/project/showfiles.php?group_id=184502)
4. Zend 1.0.2 (framework.zend.com/download)
5. CakePHP 1.2.0.5875 (cakephp.org/downloads)
6. Symfony Project 1.0.9 (symfony-project.org/content/download)
7. Seagull 0.6.5 (seagullproject.org/download)
8. PHP on TRAX 0.14.0 (phpontrax.com/downloads)
9. ZooP 1.3b1 (sourceforge.net/project/showfiles.php?group_id=154726)
Selengkapnya di :
www.phpframeworks.com/php-frameworks-download






0 komentar:

Posting Komentar

Terima Kasih dah mengunjungi Blog saya ini.