Halo sobat remaja kali ini posting tentang FRAMEWORK mungkin tidak asing lagi bagi programing ya..!tools ini sering dipakai oleh para programer lho sobat.yuk..,kita lihat apa itu Frame work?
Framework adalah kerangka kerja. Framework juga dapat diartikan
sebagai kumpulan script (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 melakukan XMLHttpRequest, maka Xajax telah
mempurmudahnya 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
(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. Beberapa contoh fungsi-fungsi standar yang telah
tersedia dalam suatu framework adalah fungsi paging, enkripsi, email,
SEO, session, security, kalender, bahasa, manipulasigambar, grafik,
tabel bergaya zebra, validasi, upload, captcha, proteksi terhadap
XSS(XSSfiltering), template, kompresi, XML dan lain-lain.
Macam-macam framework
1.Framework PHP
• CakePHP
• Code Igniter (CI)
• Symphony
• Zend
• Yii
• Kohana
2. Framework Javascript
• JQuery
• Mootools
3. Framework Ruby
• Ruby on Rails (ROR)
Saat ini banyak sekali framework berbasis PHP, diantaranya yang
paling populer adalah Zend Framework, Symphony, Prado, CakePHP,
CodeIgniter dan lain-lain. Menurut beberapa survei, CodeIgniter adalah
framework yang paling mudah dipelajari,karena keserhanaan strukturnya
dan kelengkapan dokumentasinya yang baik. Selain itu, kerapiankode
(clean and healthy code) dan ukurannya yang ramping membuatnya lebih
cepat diaksesdibandingkan dengan framework lainya.Perlu
diketahui nyaris (bahkan mungkin semua) framework menggunakan konsep
yangsama dalam membangun suatu aplikasi, yaitu konsep MVC (Model View
Controller).Kesimpulannya, kalau kita memahami MVC, maka secara garis
besar kigta sudah menguasaiframework, apapun jenis frameworknya. Dan
satu lagi kuncinya, pemahaman terhadap OOP (Object Oriented
Programming)akan sangat membantu dalam menguasai framework.
Sebenarnya hal ini sudah sering di ulang-ulang, tapi karena ranking
bersifat dinamis, pastinyasetiap bulan urutan kepopulerannya selalu
berbeda, sehingga penulis rasa hal ini perlu dikabarilagi. Budaya
penghargaan dan pemberian ranking pun terjadi pada Framework PHP yang
kinisemakin populer digunakan, beberapa bulan lalu, ci (code Igniter)
selalu nongkrong di posisiteratas, menjadi nomer satu paling banyak
digunakan para programmer dunia. Namun, selang beberapa bulan, yii muda,
yang ide awalnya mengambil dari prado, meski baru lahir, mampu
menumbangkan kompetitor yang sudah ada sebelumnya. Perlu diketahui
Framework PHP yang menganut konsep MVC (model, view,
controller)menjadikan pembuatan aplikasi berskala besar menjadi lebih
cepat, dan mudah. Seorangdesigner tidak perlu lagi merepotkan urusan
koding PHP, begitu juga seorang programmer, tidak perlu memikirkan
masalah design interface. Benar-benar Framework PHP ini sangat
memudahkan.Sampai saat artikel ini ditulis.
10 Framework PHP Terbaik yang populer saat ini :
1. yii
2. Codeigniter
3. CakePHP
4. Zend
5. Symfony
6. PHP Dev Shell
7. Prado
8. Akelos
9. QPHP
10. ZooP
Manfaat Framework
• Manfaatnya dapat membantu kerja developer dalam membangun aplikasi sehingga aplikasi bisa selesai dalam waktu yang singkat.
• Penerapan Design Patterns memudahkan dalam rancangan, pengembangan dan pemeliharaansistem.
• Stability dan Reliability aplikasi yang kita bangun lebih stabil dan
handal karena berbasispada framework yang sudah teruji stabilitas dan
kehandalannya.
• Coding Style konsisten, memudahkan dalam membaca kode dan dalam menemukan bugs
• Security Concern framework mengantisipasi dan memasang perisai terhadap adanya berbagaimasalah keamanan yang mungkin timbul.
• Dokumentasi, framework dapat mendisiplinkan kita untuk menulis dokumentasi untuk apayang kita tulis
Contoh:
Di dalam Framework tersedia library “Pagination“ misalnya, yang mana
dalam class tersebutterdapat fungsi yang memberikan nilai balik(return)
link ke halaman berikutnya, sebelumnya,awal, akir dll. nah dalam
pengembangan system kita bisa menggunakan class Pagination iniuntuk
semua proses yang membutuhkan adanya Pagination. ini adalah sebagian
kecil dari contoh library yang di sediakan oleh framework.
Namun framework sendiri kelebihan utamanya bukan dari seberapa banyak
library yang disediakan, meski hal itu tentunya akan sangat membantu
proses development. Kelebihan yangbisa kita ambil dari framework adalah
kerangka kerja dari framework tersebut dalammenyelesaikan modul-modul
yang dikembangkan sehinga mengeluarkan sebuah metodepekerjaan yang lebih
effisien, lebih rapi, lebih bersifat general, dan lebih homogen.
Kelebihan dari Framework
Pertama kelebihan dengan adanya framework akan lebih mempermudah
memahamimekanisme kerja dari sebuah aplikasi. Ini tentunya akan sangat
membantu proses pengembangansystem yang dilakukan secara team. Semua
anggota di wajibkan untuk memahami dari pola kerjaframework tersebut
selebihnya anggota team hanya mempelajari proses bisnis yang di
kehendakioleh system untuk kemudian di tuangkan kedalam framework
tersebut. Dalam artian setiap orangharus mempunyai metode yang sama
dalam menyelesaikan applikasi tersebut.
Kedua dengan memakai framework akan menghemat waktu pengerjaan suatu
applikasi,karena setiap anggota sudah memiliki sebuah acuan dalam
menyelesaikan modul. Dalam hal inimisalnya semakin banyak library yang
ada semakin mempercepat anggota untuk menemukansolusi karena tidak
setiap anggota harus membuat Class atau fungsi untuk kasus yang relatif
sama.
Berikutnya Team tidak akan di susahkan dengan adanya perputaran anggota
dalam artianjika ada anggota yang tidak bisa melanjutkan lagi
pekerjaannya anggota yang lain bisa meng-cover kekosongan tersebut.
Bayangkan jika setiap modul yang dikembangkan mempunyai logikayang
berbeda tentunya akan memakan waktu yang banyak untuk proses pemahan
akan system tersebut.
Kesekian-kalinya dengan adanya framework akan menjaga integritas dari
modul-modulyang dikembangkan. Tentunya hal ini juga tergantung dari
metode yang dikembangkan sendiri.framework hanya membantu dan
memungkinkan/mempermudah proses integrasi, tidak berartidengan adanya
framework system otomatis akan ter-integrasi. Dan masih ada
kelebihan-kelebihan lain yang dimiliki oleh framework.
Kekurangan Framework
• Para programmer mungkin akan menemukan batasan-batasan ketika merancang aplikasimenggunakan framework.
• Kemungkinan akan menambah biaya development apabila framework yg digunakan kurangterdokumentasi dan kurang di support
• Performa dan kecepatan eksekusi
Kesimpulan :
Dengan adanya framework akan sangat membantu proses penyelesaian
pekerjaandidukung oleh analisa sistem yang baik dan pertimbangan
sumberdaya yang ada.
Framework adalah sebuah komponen yang dapat ditambahkan ke sistem
operasi MicrosoftWindows atau yang telah terintegrasi ke dalam Windows.
Kerangka kerja ini menyediakansejumlah besar solusi-solusi program untuk
memenuhi kebutuhan-kebutuhan umum suatuprogram baru, dan mengatur
eksekusi program-program yang ditulis secara khusus untuk framework ini.
Jika dulu kita sering menggunakan cara konvensional dalam menuliskan
script PHP dalammembuat sebuah aplikasi web, mungkin sekarang saatnya
kita mencoba sesuatu pola.scripting yang dengan menggunakan PHP Framework.
Apa itu PHP Framework?Sesuai namanya, framework dapat diartikan sebagai
sebuah kerangka kerja yang dapatmempermudah kita dalam menyelesaikan
sebuah pekerjaan. Dengan pengertian tersebut dapatdianalogikan,
framework adalah sebuah kerangka kerja dalam pengembangan website
dinamis.Framework berbeda jika kita bandingkan dengan CMS (Content
Management System). Jikadengan CMS kita tak terlalu ambil pusing dengan
script PHP yang dibuat, akan tetapi tidak demikian dengan Framework.
Untuk membangun sebuah aplikasi, framework tetap harusmenuliskan kode
perintah PHP sesuai dengan lingkungan framework yang kita gunakan.Dalam
framework, metode pengembangan yang digunakan berbasis MVC
(Model-View-Controller). Disinilah letak perbedaan utama antara
framework dengan CMS atau PHPkonvensional. Dengan metode MVC, bagian
tampilan, logika serta query database diletakkansecara terpisah namun
tetap sinkron sehingga pembuatan aplikasi menjadi lebih terstruktur
dansederhana. Model digunakan dalam menuliskan script database,
Controller untuk mengembangkan logika pemrogramannya, sedangkan View
berfungsi dalam menampilkanlayout dari aplikasi yang kita buat.Macam-macam
dari framework itu sendiri ada banyak, antara lain CodeIgniter ,
Symfoni, Zend Framework,Yii Framework ,DooPHP, dan lain-lain.
Framework-framework tersebut memiliki karakteristik yang berbeda antara
satu dengan yang lainnya.
Kelebihan framework antara lain sebagai berikut :
1. Ringan dan cepat. Framework hanya melakukan pemanggilan
pustaka/kelas yangdibutuhkan 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 bagiantampilan, logika dan query database telah dipecah
sedemikian rupa.
3. Mayortitas mendukung berbagai jenis database.
Kekurangan Framework
Setelah ditinjau dari berbagai ulasan, kekurangan framework sangat
jarang sekali. Namunpemilihan framework yang salah akan menjadi bencana.
Pemilihan Framework
Ada beberapa hal yang harus di pertimbangkan dalam memilih framework
:Pertama Documentasi dari framework itu sendiri. Documentasi sangat
penting adanya mengingatpada umumnya tidak banyak orang/perusahaan yang
membuat framework sendiri dalammembuat applikasi. Nah maka dari itu kita
akan sangat tergantung dengan documentasi yang disediakan oleh
framework yang kita pilih.Berikutnya kesesuaian framework tersebut
dengan applikasi apa yang hendak kita kembangkan.Mengambil filosofi
“tidak perlu membunuh nyamuk dengan meriam”. artinya sebaiknya
kitamemilih framework dengan fasilitas yang pas dengan kebutuhan
kita.Berikutnya lagi perhatikan standar2 standart framework yang ada,
misalkan apakah framework tersebut MVC, apakah framework tesebut
mendukung versi sekian, apakah mendukungtemplating dll. Semakin banyak
hal yang di support oleh framework tersebut semakin baik.
Karena hal tersebut akan mempengaruhi kualitas dari software yang
dikembangkan.Berikutnya, adalah faktor kemudahan. Tentunya ini sangat
tergantung dari sumberdaya yang ada.Standart kemudahan sangat sulit di
ukur karena ini berhubungan dengan minat seseorang akansesuatu. Namun
melirik keatas berdasarkan documentasinya kita bisa mengira-ngira pola
kerja framework tersebut.
Kesimpulan:
Dengan adanya framework akan sangat membantu proses penyelesaian
pekerjaandidukung oleh analisa sistem yang baik dan pertimbangan
sumberdaya yang ada.
CONTOH-CONTOH FRAMEWORK
1. CodeIgniterCodeIgniter (CI)
Sebuah framework untuk programmer yang ingin membangun websitedengan
PHP. CI merupakan langkah cepat untuk membuat sebuah website
daripadamembangun sebuah website dengan alur koding yang biasa. Dengan
mempaketkan library-library, alur pemrograman akan terstruktur dan
logika bisnis/proses akan lebih mudahdimengerti oleh
developer/programmer lain. CI telah mempaketkan itu semua sehinggamampu
meminimalisirkan jumlah koding yang dibangun.
Kelebihan dari CodeIgniter
1. Gratis
CodeIgniter dilisensikan dibawah lisensi Apache/BSD style open source
license, iniberarti kita dapat menggunakannya sesuai dengan keinginan
kita.
2. Berjalan di PHP versi 4 dan 5
Sekarang ini PHP sudah mencapai versi ke 5, meskipun begitu masih banyak
orang yangtetap menggunakan PHP versi 4, oleh sebab itu CodeIgniter
dikembangkan agar tetapkompatibel dengan PHP versi 4 dan dapat
dijalankan pada PHP versi 5.
3. Ringan dan cepat.Secara default CodeIgniter hanya berjalan dengan me
load beberapa pustaka saja, dengandemikian hanya membutuhkan resource
yang sedikit sehingga ringan dan cepatdijalankan. Pustaka-pustaka lain
yang nantinya akan digunakan bisa di load sesuaidengan kebutuhan.
4. Menggunakan MVC.CodeIgniter menggunakan lingkungan pengembangan
dengan metode Model ViewController (MVC) yang membedakan antara logika
dan presentasi/tampilan, sehinggatugas bisa lebih mudah dipecah-pecah.
Ada bagian yang khusus membuat tampilan danbagian yang membuat core
programnya.
5. Dokumentasi.Salah satu hal
yang bisa dijadikan barometer apakah sebuah aplikasi benar-benar
dikembangkan atau tidak bisa dilihat dari dokumentasinya. Dalam hal ini
CodeIgnitersangat luar biasa, terdapat dokumentasi yang sangat lengkap
tentang semua hal yang adadalam CodeIgniter. Mulai dari langkah
instalasi sampai dokumentasi fungsi-fungsi nyatersedia. Adanya
dokumentasi sangat memudahkan bagi pemula dalam mempelajarilingkungan
pengembangan website dengan CodeIgniter.
Pustaka yang lengkap.CodeIgniter dilengkapi dengan berbagai pustaka siap
pakai untuk berbagai kebutuhan, misalnyasaja koneksi database, email,
session dan cookies, keamanan, manipulasi gambar dan banyak lagi.
1. CODEIGNITER
Framework CodeIgniter merupakan framework pengembangan aplikasi web
yang menggunakanPHP. Tujuan dari CodeIgniter adalah untuk memberikan
kesempatan kepada orang untuk membuat web lebih cepat dibanding apabila
dilakukan dari nol (from scratch) dengan menyediakan sekumpulan library
untuk mengerjakan proses-proses yang biasa dilakukan,disertai dengan
interface dan struktur logika yang sederhana untuk mengakses
library
ini.
Beberapa keuntungan yang didapat dari CodeIgniter diantaranya adalah:
• CodeIgniter ini merupakan framework yang gratis, dimana kita bisa mengunduh danmenginstallnya tanpa harus membayar.
• CodeIgniter ini sangat ringan, dimana system utamanya hanya memerlukan
sedikit sekali library. Berbeda dengan kebanyakan framework yang
membutuhkan resources yang lebih banyak. Library tambahan dapat
ditambahkan secara dnamis berdasarkan permintaan sehingga system dasar
sangat kecil dan cepat.
• Framework telah banyak dibuktikan sebagai framework yang cepat dibandingkankebanyakan framework PHP yang ada.
• CodeIgniter menggunakan pendekatan konsep Model-Visual-Controller
(MVC),sehingga pengembangan aplikasi menjadi lebih teratur dan
terstruktur.
• CodeIgniter dapat menghasilkan URL yang bersih.Contoh URL yang bersih: http://www.contoh.com/berita/tajuk/1
• CodeIgniter datang dengan sekumpulan library yang biasanya dibutuhkan
untuk mengembangkan website, misalnya untuk mengakses database, mengirim
email,memvalidasi form data, memelihara session, memanipulasi gambar,
dan sebagainya.
• CodeIgniter dapat dengan mudah diperluas kemampuannya sesuai dengan
yang kitainginkan melalui penggunaan plugin dan helper.Kekurangannya :
• Tidak mendukung AJAX, dan ORM
• Meyediakan dan memisahan file-file dalam MVC pattern, tapi masih memberikankebebasan user untuk melanggar aturan MVC
2. SYMFONY
Symfony adalah framework web yang ditujukan untuk PHP 5. Selain itu
Symfony jugakompatibel dengan berbagai sistem database. Sama seperti
CakePHP dan CodeIgniter, Symfonyjuga menganut arsitektur MVC (Model View
Controller).Dukungan untuk AJAX juga tersedia di framework Symfony ini.
Dokumentasi yang disediakancukup baik. Mungkin yang menjadi persoalan
adalah proses instalasi dan konfigurasi cukuprumit bila dibandingkan
dengan framework sebelumnya.
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.” inimenjadi kelebihan sekaligus
kekurangan.Kekurangan
– Tidak mendukung PHP4.
– Relatif butuh waktu lama untuk mengerti framework ini.
– Instalasi dan konfigurasinya cukup rumit
3. ZEND FRAMEWORK
Zend Framework sebagai media yang memudahkan membuat
website.Berdasarkan informasi dari situs resminya, disebutkan bahwa
fokus dari Zend Framework iniadalah untuk membangun aplikasi berbasis
Web 2.0 dan untuk memudahkan dalam mengaksesAPI dari berbagai vendor
seperti Google, Amazon, Yahoo! , dan Flickr.Tidak
mengherankan jika Zend Framework menyediakan berbagai modul yang
spesifik untuk Web 2.0, seperti AJAX, Syndication, Search, dan Web
Services.
Kelebihannya :
– Dukungan terhadap AJAX, ORM.
– Berdasarkan informasi dari situs resminya, disebutkan bahwa fokus dari
ZendFramework ini adalah untuk membangun aplikasi berbasis Web dan
untuk memudahkandalam mengakses API dari berbagai vendor seperti Google,
Amazon, Yahoo!, dan Flickr.
Kekurangannya :
– 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 sudahsangat tinggi.
4. JQuery
JQuery adalah framework sekaligus kumpulan script-script yang
berguna untuk membuat webmenjadi lebih interaktif, terlihat powerfull
dan animasi yang bagus. Jquery ditulis dengan menggunakan javascript
sebagai sebuah file tunggal.
JQuery ini memiliki keunggulan pluginable,artinya JQuery bisa ditambahi
dengan berbagai plugin. Sayangnya JQuery ini cukupsulit untuk
dipelajari, paling tidak harus mengenal javascript dan konsep OOP.
5. Ajax
Dengan menggunakan ajax framework anda tidak perlu lagi membuat
script ajax. Tetapi apa yang dimaksud dengan ajax framework? adalah
lingkungan pengembangan aplikasi ajax, didalamnya berisi sejumlah fungsi
yang bisa digunakan untuk membangun aplikasi ajax.misalkan fungsi
request data, mengirim data melalui form, meload halaman dll, tergantung
skaladan tujuan pembuatan ajax framework
tersebut. Ada banyak ukuran ajax framework, dari yangpaling sederhana sampai rumit.
Jadi dengan menggunakan ajax framework
tersebut andaHANYA menggunakan fungsi yang sudah tersedia untuk
mengembangkan web anda. Nantinya aplikasi yang dihasilkan akan sesuai
dengan kemampuan framworknya. Jika ajax framework yang anda pilih hanya
bisa mengirim data lewat form, dan merequest data, maka aplikasi
andahanya mampu menjalankan aksi tersebut, kecuali anda merubah ajax
framework nya.
Keuntungan Menggunakan ajax framework
Ada banyak keuntungan menggunakan ajax framework
diantara menghemat pikiran dantenaga, kenapa? anda tidak perlu
pusing-pusing hanya karena membuat rutin-rutin ajax, serahkansaja pada
ajax framework. Anda tinggal menggunakannya saja. Dan yang perlu
diperhatikan ajax framework biasanya sudah dites, artinya kemungkinan
ada bug kecil, jika nanti ditemukan,anda tinggal mengupdate ajax
frameworknya saja. Keuntungan lain, aplikasi yang anda buat lebih
terstruktur, stabil dan mudah dikembangkan.
Kekurangan menggunakan ajax framework
Selain kelebihan ada juga kekurangan. Jika anda tidak pintar memilih
ajax framework bukan kecepatan aplikasi yang anda dapatkan, malah
aplikasi anda terasa lambat, berat untuk diakses,kenapa? sebagian ajax
framework memiliki ukuran yang besar dengan jumlah baris kode
yangbanyak. file dengan banyak baris tersebut di-include-kan pada
halaman awal, maka dibutuhkanwaktu khusus untuk mendownload file ajax
framework tersebut.
nah,itu sekilas tentang FRAMEWORK ,jangan lupa share ya..
Terima Kasih
No comments:
Write comments