Framework PHP ( Pengenalan/ Pengertian)

Di tulisan saya yang sebelumnya, saya sudah sedikit membagikan sebuah source kode web travel agent. Teknik pemrogramannya belum mencapai OOP, karena pada saat membuatnya dulu, saya masih sangat buta
sama yang namanya OOP :D . Maklumlah, dulu saya belajar pemrograman secara otodidak. Tapi walaupun teknik pemrogramannya menggunakan konsep OOP, sudah lumayan powerfull untuk yang namanya sebuah website.


Nah, pada kesempatan kali ini saya akan mengajak rekan-rekan untuk berkenalan dengan yang namanya framework web. Framework secara umum dapat diartikan sebagai alat yang digunakan untuk membantu pekerjaan. Karena disini yang akan kita bahas adalah framework web, jadi definisi dari framework web adalah sebuah alat yang dapat digunakan untuk mempermudah pembuatan sebuah website. Mungkin muncul pertanyaan dari rekan-rekan, “Kenapa gak pakai CMS yang sudah jadi saja? Kan sama-sama mudah”.


Memang betul, dengan menggunakan sebuah CMS, kita sudah mendapatkan sebuah website jadi tanpa kita harus untuk menuliskan kode-kode penyusun dari web tersebut. Sedangkan dalam menggunakan framework web, kita masih harus menulis kode, bedanya kode-kode yang kita tulis harus menyesuaikan dengan lingkungan framework yang kita gunakan. Memang konsekuensinya kita harus belajar lagi lingkungan pengembangan berdasarkan framework yang kita gunakan, tetapi hal itu akan terbayar setelah kita menguasai dan bisa menggunakan framework tersebut.

Muncul pertanyaan kembali, “Terus, apa bedanya dengan sebuah web yang kita bangun tanpa framework alias coding manual?”. Disinilah kelebihan dari sebuah farmework, di dalam sebuah framework sudah disediakan berbagai library-library siap pakai tanpa harus kita membuatnya lagi seperti coding manual yang biasanya kita lakukan. Contoh-contoh library yang umum terdapat dalam sebuah framework web ialah paging, upload, validasi form, enkripsi dan yang lainnya. Fungsi untuk koneksi ke database juga sudah disediakan. Sehingga tidak perlu kaget jika akan banyak kode atau fungsi yang terlihat tidak seperti biasanya, karena fungsi-fungsi tersebut merupakan fungsi bawaan framework dan bukan fungsi asli dari bahasa pemrograman yang kita gunakan entah itu PHP, ASP, Phyton maupun Ruby.

Sebagian besar framework jaman sekarang, framework web ataupun framework aplikasi desktop (.Net) sudah mendukung konsep MVC (Model, View, Controller). yang merupakan impelementasi dari teknik pemrograman OOP. Apa sih MVC itu? MVC adalah konsep pemrograman, dimana logika pemrograman, query database, dan tampillannya dipisahkan. Sehingga kode-kode penyusun sebuah aplikasi web terlihat lebih sederhana dan terstruktur. Jadi, tidak akan ada query database di dalam sebuah file yang memang ditujukan untuk tampilan.
MVC (Model, View, Controller)

  1. Model adalah sebuah layer pada MVC yang merepresentasikan data yang digunakan oleh aplikasi sesuai dengan proses  yang terjadi pada data tersebut, dengan memilahnya menjadi beberapa bagian terpisah kembali, seperti penampungan data, persistence, proses manipulasi, dan lain- lain. Secara singkat, model bertugas untuk menangani query-query database.
  2. View adalah sebuah layer pada MVC yang mengandung keseluruhan detai dari implementasi user interface dengan melibatkan komponen grafis yang menyediakan representasi proses internal aplikasi dan meuntun alur interaksi user terhadap aplikasi.
  3. Controller adalah sebuah layer pada MVC yang menyediakan detai alur program dan transisi layer, dan bertanggung jawab akan penampungan event yang dibuat oleh user dari view dan melakukan update terhadap komponen model menggunakan data dari user.
Ada banyak framework web yang bisa didapatkan secara gratis di internet sesuai dengan bahasa pemrograman webnya masing. Untuk bahasa pemrograman PHP bisa menggunakan CodeIgniter, CakePHP, Zend, Obullo, Kohana dan yang lainnya. Ada Ruby on Rails untuk yang gemar dengan bahasa pemrograman Ruby. Dan ada Django bagi yang ingin membangun aplikasi web dengan bahasa Phyton. Khusus untuk bahasa Phyton, kemungkinan sulit untuk mencari tempat hostingnya. Karena untuk sekarang, sudah sedikit pihak hosting yang mensupport bahasa Phyton di server mereka. Sebagian besar, perusahaan hosting hanya mendukung PHP dengan server Apache.

0 komentar:

Posting Komentar