Header Ads

  • Breaking News

    Penggunaan Framework di Dalam PHP

    Cerita Dosen, Sepriano, M.Kom - Materi Pertemuan terakhir dalam mata kuliah Pemrograman Web 1 atau pertemuan ke-15 akan membahas tentang Penggunaan Framework dalam bahasa pemrograman PHP, silahkan dibaca, dipahami dan di implementasikan dalam bentuk latihan serta tugas yang ada dalam materi ini.

    Membuat web memang tidak mudah. Ada banyak source yang terkait didalamnya,  PHP mungkin menjadi salah satunya. Bahasa pemrograman ini memang dirancang untuk para pengembang web agar dapat menciptakan suatu halaman web yang bersifat dinamis. Sekilas tentang PHP, PHP pertama kali dibuat oleh Rasmus Lerdorf pada tahun 1995 dan terus dikembangkan hingga saat ini. Ada banyak sekali web termasuk CMS yang dibuat menggunakan bahasa PHP seperti WordPress dll.

    PHP adalah bahasa pemrograman website yang paling umum digunakan sekarang ini. Karena begitu banyak yang menggunakan biasanya cara penulisan kode, struktur website, fungsi, dan banyak hal lainnya yang masih dibuat dengan bermacam-macam gaya yang sangat berbeda.

    Kesulitan  mulai ditemukan  ketika  website/program  yang  kita  buat  berpindah  tangan  ke programmer lain. Biasanya programmer lain akan kebingungan ketika melihat kode yang dibuat programmer sebelumnya karena banyaknya perbedaan tadi. Kabar baiknya adalah, hal tersebut nggak akan terjadi kalau kita menggunakan framework / kerangka kerja.

    Framework adalah sebuah kerangka kerja yang dibuat dalam format dan aturan tertentu sehingga membentuk suatu sistem yang terstruktur dan mudah dipahami secara global. Jika dikaitkan dengan PHP maka dapat diartikan sebagai suatu kerangka kerja yang telah terpola dan memudahkan pengembang web dalam pembuatan web yang menggunakan script PHP. Mempermudah yang dimaksud misalnya, Dalam membuat sebuah aplikasi web kita sering menulis script PHP secara keseluruhan (konvensional) dan itu pun kita ulang pada halaman yang lain. Bukankah itu begitu tidak efesien disamping berat ketika diload ? Dengan PHP Framework semua bisa teratasi. Semuanya sudah diatur menjadi pola-pola tertentu yang disebut dengan class. Pola/class inilah yang meringankan kita dalam penulisan script dan load halaman web.

    Tujuan penggunaan framework adalah :

    1. Menyamakan alur dan struktur pembuatan kode program  sehingga lebih mudah dipahami, sekalipun program harus berpindah tangan ke programmer lain
    2. Memudahkan pembuatan program dengan fungsi-fungsi yang sudah disediakan oleh framework
    3. Menyediakan kode yang rapi, mudah diubah maupun dikembangkan lebih jauh.
    4. Mempersingkat waktu pengerjaan program
    5. Membuat program cenderung lebih aman, karena framework sudah menyediakan fitur keamanannya sendiri

    Dari keuntungan-keuntungan tersebut, saya rasa sangat nggak rugi kalau kita belajar membuat  website  dengan  framework  PHP.  Ada  sangat  banyak  framework  PHP  yang beredar sekarang ini. Misalnya :

    a.  Codeigniter 
    b.  Laravel
    c.  Zend
    d.  Yii Framework 
    e.  CakePhp
    f.   Phalcon

    PHP Framework berbeda jika dibandingkan dengan CMS (Content Management System), meski sama-sama meringankan dalam pembuatan web. Jika menggunakan CMS, kita tidak perlu pusing menulis script. Semuanya telah dibuat menjadi Fix dan kita hanya perlu mengatur bagian content dan interfacenya saja. Tidak demikian dengan Framework. Membangun sebuah aplikasi web dengan menggunakan framework, kita tetap harus menuliskan  kode  perintah  PHP  sesuai dengan  ruang  lingkungan  yang disediakan  oleh framework.

    Framework merupakan suatu perangkat lunak (software) yang bersifat penggunaan ulang suatu library atau classes yang ada di dalam sistem tersebut untuk menjadi suatu aplikasi. Di dalam framework PHP, sudah terdapat beberapa classes,objects dan library. Dengan begitu ketika kita membuat aplikasi menggunakan framework, kita bisa menggunakan fitur yang sudah ada di dalam software tersebut.

    Framework adalah kerangka kerja. Framework juga dapat diartikan sebagai kumpulanscript (terutama class dan function) yang dapat membantu developer/programmer dalam menangani berbagai masalah-masalah dalam pemrograman seperti koneksi ke database, pemanggilan variabel, file,dll sehingga developer lebih fokus dan lebih cepat membangunaplikasi.Bisa juga dikatakan Framework adalah komponen pemrorgaman yang siap re-use kapansaja, sehingga programmer tidak harus membuat skrip yang sama untuk tugas yang sama.Misalkan saat anda membuat aplikasi web berbasis ajax yang setiap kali harus melakukanXMLHttpRequest, maka Xajax telah mempermudahnya untuk anda dengan menciptakan sebuahobjek khusus yang siap digunakan untuk operasi Ajax berbasis PHP. Itu adalah salah satu contohkecil, selebihnya Framework jauh lebih luas dari itu.Secara

    sederhana bisa dijelaskan bahwa framework adalah kumpulan fungsi (libraries),maka seorang programmer tidak perlu lagi membuat fungsi-fungsi (biasanya disebut kumpulanlibrary) dari awal, programmer tinggal memanggil kumpulan library atau fungsi yang sudah adadidalam framerwork, tentunya cara menggunakan fungsi-fungsi itu sudah ditentukan olehframework.

    PHP Framework menggunakan metode pengembangan berbasis MVC. Namun apa itu MVC

    ? MVC merupakan suatu metode untuk memisahkan bagian-bagian dari suatu web aplikasi. MVC adalah kependekan dari Model View Controller. MVC terdiri dari tiga bagian yaitu;
    1. Model : Model mewakili struktur data.  Biasanya model  berisi fungsi-fungsi yang membantu kita dalam pengelolaan database seperti memasukkan data ke database, update data dan lain-lain.
    2. View : View adalah bagian yang mengatur tampilan ke user. Bisa di katakan berupa halaman web.
    3. Controller  :  Controller  merupakan  bagian  yang  menjembatani  model  dan  view.
    Controller berisi script-script php yang berfungsi untuk memproses suatu data dan mengirimkannya ke halaman web.

    Disinilah letak perbedaan utama antara framework dengan CMS atau PHP konvensional. Dengan metode  MVC,  bagian  tampilan,  logika  serta  query  database  diletakkan  secara terpisah namun tetap sinkron sehingga pembuatan aplikasi menjadi lebih terstruktur dan sederhana. Model digunakan dalam menuliskan script database, Controller untuk mengembangkan logika pemrogramannya, sedangkan View berfungsi dalam menampilkan layout dari aplikasi yang kita buat. Kelebihan framework antara lain sebagai berikut :
    1. Ringan dan cepat. Framework hanya melakukan pemanggilan pustaka/kelas yang dibutuhkan sehingga meminimalkan resource yang diperlukan sehingga ketika kita me-load sebuah halaman akan menjadi ringan dan cepat.
    2. Menggunakan metode  MVC.  Seperti  yang  telah  dijelaskan  sebelumnya,  dengan metode MVC akan mempermudah kita dalam memahami alur pemrograman karena untuk bagian tampilan, logika dan query database telah dipecah sedemikian rupa.
    3. Mayortitas mendukung berbagai jenis database.
    Untuk menggunakan framework PHP, setidaknya kita harus punya sedikit dasar pengetahuan dasar di pemrograman berbasis obyek agar lebih mudah paham . Salah satu framework  PHP  yang  paling  mudah  untuk  dipelajari  adalah  CodeIgniter.  CodeIgniter memiliki struktur yang cukup sederhana, ditambah lagi dokumentasi yang sangat lengkap.

    Dalam beberapa post kedepan kita akan belajar penggunaan CodeIgniter dengan  lebih detail dan spesifik lagi. Berikut beberapa contoh PHP Framework beserta kelebihan yang dibawanya :

    CodeIgniter

    Kelebihan
    • Mudah digunakan dan tidak memerlukan konfigurasi yang rumit
    • Fungsi-fungsi pendukung yang cukup lengkap
    • Mendkung PHP4 dan PHP5
    • Mungkin merupakan Framework MVC paling populer dan paling banyak digunakan
    • Dokumentasi  yang  sangat  bagus,  friendly  dan  didukung  oleh  forum,  wiki,  dan komunitas yang besar
    Kekurangan
    • Tidak mendukung AJAX, dan ORM
    • Meyediakan dan memisahan file-file dalam MVC pattern, tapi masih memberikan kebebasan user untuk melanggar aturan MVC
    CakePHP

    Kelebihan
    • Dukungan terhadap AJAX, ORM
    • Automagic function seperti validasi input, dll, yang mempercepat coding
    • Support PHP4 dan PHP5
    • Lebih mencerminkan MVC yang sesungguhnya dibandingkan CI
    • Komunitas pengguna yang besar dan forum cukup baik
    Kekurangan
    • Manual yang ada tidak selengkap CI.
    • Butuh waktu belajar yang lebih lama untuk menguasai framework ini dibanding CI.
    Tapi jika sudah benar-benar mengerti, banyak kelebihan dibanding CI. Beberapa situs menyarankan anda untuk belajar dan terbiasa dulu dengan CodeIgniter baru kemudian mempelajari CakePHP. http://www.zenperfect.com/2007/07/15/faceoff-codeigniter-vs-cakephp/

    Symfony

    Kelebihan
    • Dukungan terhadap AJAX, ORM.
    • Kompatibel dengan berbagai macam database.
    • Banyak library dan fungsi symfony yang sudah tersedia. Bahkan hampir mendekati CMS. Sehingga ada yang mengatakan ”Symphony is  a CMS with a heart of a framework.” ini menjadi kelebihan sekaligus kekurangan.
    Kekurangan
    • Tidak mendukung PHP4.
    • Relatif butuh waktu lama untuk mengerti framework ini.
    • Instalasi dan konfigurasinya cukup rumit.

    Zend

    Kelebihan
    • Dukungan terhadap AJAX, ORM.
    • Berdasarkan  informasi  dari  situs  resminya,  disebutkan  bahwa  fokus  dari  Zend Framework ini adalah untuk membangun aplikasi berbasis Web dan untuk memudahkan dalam mengakses API dari berbagai vendor seperti Google, Amazon, Yahoo!, dan Flickr.
    Kekurangan
    • Tidak mendukung PHP4.
    • Manual yang ada kurang mengakomodasi kebutuhan.
    • Performanya relatif lambat (mungkin karena banyaknya library).
    • Konon katanya Framework ini hanya cocok untuk orang dengan skill PHP yang sudah sangat tinggi.
    Akelos

    Merupakan Framework yang relatif baru dengan kemampuan yang handal dan lengkap

    Kelebihan
    • Dukungan   terhadap   PHP4,  PHP5,   AJAX,  ORM   (cukup   lengkap   dan  cukup mengakomodasi semua kebutuhan yang umum dari aplikasi php)
    Kekurangan
    • Kurang adanya dukungan komunitas. Mungkin karena masih relatif baru
    • Beberapa forum mengatakan bahwa framewok ini cukup banyak memakan memory
    Contoh pengenalan CodeIgniter
    Berikut ini adalah struktur file CodeIgniter




    Persiapan membuat aplikasi menggunakan CodeIgniter dan Jquery EasyUI

    1. Ekstrak file CI dari hasil download  https://codeigniter.com/download dan simpan pada under root web server kita. Jika kita menggunakan XAMPP, maka secara default root tersebut terletak pada C:\xampp\htdocs\ dan jika kita menggunakan WAMP maka secara default root tersebut terdapat pada C:\wamp\www\
    2. Jalankan  CI  yang  telah  kita  download  pada  browser  dengan  mengetikkan http://localhost/[nama-file]/ dan akan tampil seperti gambar di bawah


    Ubah settingan $config[base_url] pada file config yang terletak pada application\config\config.php menjadi lokasi server kita, misalkan menjadi http://localhost/PW2/, seperti terlihat pada gambar


    Siapkan template yang akan kita gunakan untuk membuat aplikasi, pada pembahasan ini kita akan menggunakan template Easyui yang sebelumnya sudah kita download. Simpan folder themes dan js yang terdapat pada JQueryEasyUI di folder assets, seperti terlihat pada gambar



    Akan menjadi


    Lalu untuk melakukan setting file aplikasi mana yang  akan digunakan terdapat pada
    $route['default_controller'] = "[nama file]"; di lokasi application/config/routes.php. [nama file] di sini kita buat dengan nama layout.php


    [nama file] tersebut akan dieksekusi pada folder application/controllers/[nama file]
    Membuat Layout Aplikasi

    1.   Controller

    Selanjutnya kita buat program dengan nama layout.php pada lokasi application/controller/ sesuai dengan route['default_controller']   yang tadi sudah kita buat, karena file tersebut

    yang akan dieksekusi kali pertama ketika aplikasi dijalankan. Pastikan nama file yang kita buat sama dengan nama class yang terdapat di dalam file tersebut, seperti yang terlihat dalam gambar.


    Keterangan script:
    - script merupakan  nama  class  layout yang diambil dari nama file layout.php
    - Pada function index terdapat yang akan melakukan eksekusi file  layout.php  pada folder application\views yang merupakan tampilan awal dari aplikasi.

    2.   Views

    Lalu kita buat untuk tampilan program pada folder application/views/layout.php sesuai dengan script di atas pada baris ke-12


    dengan script seperti di bawah ini


    Lakukan pembuatan menu dengan metode MVC dengan cara melakukan perubahan script yang telah dibuat pada script di atas



    Menjadi


    Selanjutnya kita buat file menu.php pada folder application\viewes seperti pada gambar di bawah  yang  akan  kita  gunakan  sebagai  menu.  Proses  pemanggilan  menu  tersebut menggunakan script    



    Jalankan aplikasi sederhana kita, sehingga tampilan awal menjadi seperti di bawah ini

    Tidak ada komentar

    Post Bottom Ad