Framework adalah kerangka kerja. Framework juga dapat diartikan sebagai kumpulan script (terutama class dan function) yang dapat membantu developer atau programmer dalam menangani berbagai masalah dalam pemrograman, seperti koneksi ke database, pemanggilan variabel, file, dan lain-lain. Bisa juga dikatakan Framework adalah komponen pemrorgaman yang siap re-use kapan saja, sehingga programmer tidak harus membuat skrip yang sama untuk tugas yang sama. Dengan fungsi tersebut developer lebih fokus dan lebih cepat membangun aplikasi. Gambar berikut menunjukkan bagaimana proses framework dengan model MVC (Model, View, Controller) bekerja.
Misalkan saja saat kita membuat aplikasi web berbasis ajax yang setiap kali harus melakukan XMLHttpRequest, maka Xajax telah mempermudahnya untuk anda dengan menciptakan sebuah objek khusus yang siap digunakan untuk operasi Ajax berbasis PHP.
Itu adalah salah satu contoh kecil, selebihnya Framework jauh lebih luas dari itu. Secara sederhana bisa dijelaskan bahwa framework adalah kumpulan fungsi (library), maka seorang programmer tidak perlu lagi membuat fungsi-fungsi (biasanya disebut kumpulan library) dari awal, programmer tinggal memanggil kumpulan library atau fungsi yang sudah ada didalam framerwork, tentunya cara menggunakan fungsi-fungsi itu sudah ditentukan oleh framework.
Beberapa contoh fungsi-fungsi standar yang telah tersedia dalam suatu framework adalah fungsi paging, enkripsi, email, SEO, session, security, kalender, bahasa, manipulasi gambar, grafik, tabel bergaya zebra, validasi, upload, captcha, proteksi terhadap XSS(XSSfiltering), template, kompresi, XML dan lain-lain.
Macam-macam framework :
Setiap programmer PHP perlu memahami pentingnya memanfaatkan framework didalam membangun sebuah aplikasi. Tentu tidak berlaku untuk programmer PHP saja, tetapi juga untuk setiap programmer dengan menggunakan bahasa pemrograman manapun. Tanpa adanya sebuah software framework maka pengembangan sebuah aplikasi akan menjadi semakin rumit dan memakan waktu yang lama. Karena biasanya sebuah software framework yang baik akan mampu menangani seluruh hal-hal standar yang dibutuhkan didalam pengembangan aplikasi.
Hal-hal standar tersebut contohnya adalah masalah security, text-processing, pemodelan pemrograman (misalnya: modular atau MVC), database connectivity, dan lain-lain. Sehingga pada akhirnya seorang programmer hanya perlu fokus pada logika pemrograman yang berhubungan dengan kebutuhan untuk apa aplikasi tersebut dibangun. Hal yang perlu diperhatikan disini adalah bahwa setiap pengguna salah satu framework akan merasakan betapa mudahnya sebuah aplikasi itu dibangun dengan menggunakan framework tersebut jika dibandingkan tanpa menggunakan sebuah software framework.
Pada PHP ada beberapa framework PHP yang terkenal dan sering dipakai untuk membangun sebuah aplikasi, seperti CodeIgniter, Zend Framework, CakePHP, Yii ataupun Symphoni.
Berikut beberapa alasan mengapa kita disarankan untuk menggunakan framework didalam pemrograman PHP menjadi sangat penting:
1. Efektifitas dan Efisiensi Pemrograman
Dengan menggunakan sebuah software framework yang baik setidaknya akan mengurangi beban kerja seorang programmer karena akhirnya fokus seorang programmer hanya pada logika proses (alur proses pada aplikasi) sesuai dengan kebutuhan yang diminta kepadanya. Tentunya ini akan membuat pekerjaan pengembangan aplikasi akan menjadi cepat dan akan berujung pada penyerahan pekerjaan yang tepat waktu.
Sebagai contoh untuk masalah security program, tidak semua programmer mampu menangani permasalahan ini. Padahal fungsi security termasuk yang sangat penting didalam sebuah aplikasi besar yang membutuhkan tingkat security yang baik. Apalagi misalnya pada aplikasi yang menangani privacy keanggotaan pada sebuah komunitas ataupun aplikasi yang mengolah data berupa angka yang membutuhkan tingkat ‘kerahasiaan’ yang tinggi.
Dengan memilih sebuah framework yang memiliki tingkat sekuritas yang baik, maka selanjutnya programmer hanya perlu memfokuskan diri pada kebutuhan untuk apa fungsi keamanan itu dibuat. Dengan demikian programmer akan leebih efisien dalam menyelesaikan sebuah project.
2.Memudahkan Stukturisasi dan Standarisasi Pemrograman
Masalah ini biasanya muncul jika seorang programmer sedang mengembangkan sebuah aplikasi besar apalagi sistem yang dibangun termasuk yang berukuran ‘raksasa’. Semakin banyak kode-kode program yang dibuat akan semakin sulit proses debugging-nya apabila jika kemudian terjadi error program atau jalannya program tidak sesuai dengan yang diinginkan. Maka dari itu pilihlah sebuah software framework yang memiliki standar serta struktur program yang baik, yaitu yang memudahkan anda untuk menelusuri, mencari bagian-bagian dari kode program anda yang mungkin perlu diperbaiki ataupun dikustomisasi.
Sebagai contoh pada framework CodeIgniter (CI) yang menggunakan konsep MVC (Model-View-Controller). Dengan konsep MVC ini maka seorang programmer bisa memilah-milah antara View, Controller dan Model dan selanjutnya mengembangkan sendiri struktur programnya. Maka penggunaan framework CodeIgniter membantu seorang programmer dalam menstrukturkan kode programnya berdasarkan konsep MVC, yaitu dengan memisahkan antara file-file tampilan/HTML pada bagian view, sedangkan file-file yang menangani logika proses pada bagian controller dan file-file yang menyimpan fungsi-procedure ataupun model pada bagian model. Dengan demikian selain kita bisa menggunakan semua library yang disediakan oleh software framework tersebut kita juga bisa menggunakannya sebagai standar untuk menstrukturkan program kita.
3. Memudahkan Koordinasi dan Pemeliharaan Untuk Pemrograman Terdistribusi
Pada pengembangan aplikasi yang berukuran besar seringkali seorang project manager harus melibatkan banyak anggota tim programmer. Sehingga pekerjaan pada satu buah proyek yang besar harus didistribusikan kepada tim yang beranggotakan programmer dengan jumlah yang banyak pula. Mungkin pada kasus ini mengikuti sebuah prinsip ‘semakin banyak orang yang terlibat semakin banyak pula solusi yang tercipta'.
Walaupun tidak seluruhnya terbukti benar, karena kita sering menemui kenyataan bahwa semakin banyak orang semakin banyak pula keinginannya. Jadi sulit untuk mengatur banyak orang. Sehingga dengan banyaknya programmer yang terlibat pada suatu proyek menciptakan permasalahan yang tidak kalah rumit yaitu masalah standarisasi dan koordinasi.
Sehebat apapun tim programmer didalam sebuah proyek tetapi kalau tidak terkoordinasi dengan baik dan juga standar yang baik didalam membuat kode program maka pengerjaan proyek tersebut bisa terlambat dan ujung-ujungnya proyek menjadi merugi. Dengan demikian penggunaan software framework akan membuat terkoordinasinya pekerjaan tim anda dan dengan melibatkan banyak anggota programmer akan menjadikan sebuah proyek dapat dikerjakan dengan lebih cepat.
Semoga bermanfaat, Terimakasih.
2 komentar
167.114.18.208 - Asikbet adalah Agen Sbobet, Bandar Taruhan, IDN Poker, Kasino Online Poker Slot Online. Melayani pembuatan Akun Daftar Sbobet Online. Selamat Datang Di Situs 167.114.18.208 Agen Sbobet Terpercaya. http://167.114.18.208/
BalasJadi seperti itu ya
BalasProgrammer Adalah