Dasar-Dasar Pemrograman Framework
Dasar-Dasar Pemrograman Framework
Pertemuan 2 :
Dasar-dasar Pemrograman Framework
Oleh : Jamal,S.Kom,M.Kom
[email protected]
Tujuan :
Setelah mengikuti perkuliahan Mahasiswa dapat
mengetahui dan memahami dasar-dasar framework
PENDAHULUAN
Web framework biasa dikenal dengan web application
framework
Web application framework adalah suatu software
framework yang didesain untuk mendukung
pengembangan web dinamis, aplikasi web dan web
service
Pemrograman web berbasis framework didasarkan
pada konsep OOP (Object Oriented Programming)
Matakuliah terkait :
Algoritma dan Pemrograman
Pemrograman Berorientasi Objek
Pemrograman Web
CMS dan Web Framework (1)
CMS :
Cocok untuk kebutuhan instants pembuatan web
Sangat membantu pengembang web pemula (tidak
berhubungan dengan kode program)
Dapat digunakan untuk membangun aplikasi (tidak
direkomendasikan)
Jenis CMS :
Sistem Fortal : Joomla, Drupal, Wordpress dll.
E-Learning : Moodle, Aututor, DrupalEd dll.
E-Commerce : Prestashop, Opencart, OsCommerce dll.
Forum Diskusi : PHPBB, VFM
CMS dan Web Framework (2)
Web Framework :
Flexsibel untuk pengembangan untuk aplikasi berbasis Web
Dapat digunakan untuk membuat CMS tertentu sesuai
dengan kebutuhan
Secara umum lebih secure jika dibanding dangan CMS karena
Sistem Terbagi ata 3 yaitu (Model, View, Controller)
Pengembang harus mengusai konsep OOP dan MVC
Contoh Framework PHP
CodeIgniter (CI)
CakePHP
Zend Framework
Yii
DooPHP
dll
Jenis Framework PHP (1)
CakePHP :
Di desain mengikuti arsitektur RoR (Rubiyon Rails)
Mendukung Teknologi ORM (Objet Relational Model)
Dokumentasi lengkap dan jelas
Library yang lengkap dan dokumentasi yang memadai
Bersifat Opensource dan didukung oleh komunitas yang
besar
Digunakan oleh system web yang terkenal (Yahoo)
Jenis Framework PHP (2)
CodeIgniter (CI) :
Banyak digunakan karena berukuran kecil dan ringan di
akses
Framework dengan configurasi minimal
Dokumentasi lengkap dan jelas
Bersifat Opensource dan didukung oleh komunitas yang
besar
Dapat dikembang dengan mudah (Plugin, helper dan
Hook)
Paket Library yang lengkap (Database, email, form,
table dll)
Jenis Framework PHP (3)
Yii Framework :
Menggunakan Database Abstaction Layer seperti Data Access
Object dan Active Record untuk memudahkan interakasi
dengan database
Terintegrasi dengan JQuery dan Javascript Framework
Memiliki data layer chace untuk cache data, halaman
Penggunaan Themes
Console, penggunaan perintah pada console untuk
melakukan beragam perintah otomatis
Widget, semacam kontrol yang memiliki fungsi tertentu
seperti aoutcomplete, datapicker, table dll
Modular mudah ditambahkan
Arsitektur Web Framework (1)
Berhubungan erat dengan konsep MVC :
Model, mengandung fungsi-fungsi untuk berkomunikasi
dengan database, sepert mengambil data product dengan Id
tertentu, hapus produk, menyimpan komentar pada log.
View, kode yang dikeluarkan oleh HTML yang akan dilihat
oleh pengunjung
Controller, kode yang memeriksa input dari pengunjung dan
memilih apa yang harus dilakukan
Kenapa harus dipisah ?
Untuk mempermudah dan mempercepat proses
pengembangan perankat lunak
Arsitektur Web Framework (2)
Illustrasi Cara Kerja Aplikasi MVC :
Pengguna mengklik sebuah link, untuk membuka shopping cart.
Misalnya link seperti :
myblondestore.com/index.php/shoppingcart/view
Misalnya dengan modifikasi URL, diketahui bahwa shopping cart
adalah nama obyek CONTROLLER dan view adalah fungsi yg
digunakan untuk menampilkan obyek tadi
Maka dipanggilah file CONTROLLER shopping cart dengan fungsi
view
Pada CONTROLLER ini ada satu baris kode yang memanggil
MODEL bernama query yang ada difile lain. Query ini bertugas
menampilkan barang-barangyang dipilih oleh pelanggan
Data hasilquery 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
disebutVIEW.
Arsitektur Web Framework (3)
Memilih Framework PHP
Ketika kita dihadapkan pada sebuah project web yang memang
memerlukan pengerjaan dari awal dan CMS yang ada tidak
memenuhi requirement, pilihannya adalah:
buat semuanya dari awal, termasuk fungsi-fungsi, class-class dsb
menggunakan fungsi-fungsi dan class-class yang udah ada.
menggunakan PHP framework
Tips :
Jangan hanya berdasarkan fitur tapi sesuaikan dengan kebutuhan
project dan kemampuan individu
Seberapa banyak waktu yang dimiliki
Dokumentasi & Komunitas
Third Party Support
Jangan terpengaruh pendapat orang lain, karena kebutuhan
masing-masing individu berbeda-beda.