Friday, July 4, 2014
CodeIgniter
2.8 CodeIgniter
CodeIgniter adalah sebuah framework PHP yang dapat
membantu mempercepat developer dalam pengembangan aplikasi web berbasis PHP
dibanding jika menulis semua kode program dari awal.
CodeIgniter pertama kali dibuat oleh Rick Ellis, CEO
Ellislab, Inc. (http://ellislab.com), sebuah perusahaan yang memproduksi CMS
(Content Management System) yang cukup handal, yaitu Expression Engine
(http://www.expressionengine.com). Saat ini, CodeIgniter dikembangkan dan
dimaintain oleh Expression Engine Development Team. Adapun beberapa keuntungan
menggunakan CodeIgniter, diantaranya:
1.
Gratis CodeIgniter berlisensi dibawah
Apache/BSD opensorce.
2.
Ditulis
Menggunakan PHP 4
meskipun CodeIgniter
dapat berjalan di PHP 5, namun sampai saat ini kode program
CodeIgniter masih dibuat dengan menggunakan PHP 4.
3.
Berukuran
Kecil
ukuran CodeIgniter yang
kecil merupakan keunggulan tersendiri. Dibanding dengan framework lain yang
berukuran besar.
4.
Menggunakan
Konsep MVC
CodeIgniter menggunakan
konsep MVC yang memungkinkan pemisahan layer application-logic dan
presentation.
5.
URL
yang Sederhana secara default, URL
yang dihasilkan CodeIgniter sangat bersih dan Serach Engine Friendly (SEF).
6.
Memiliki
Paket Library yang lengkap CodeIgniter mempunyai library yang
lengkap untuk mengerjakan operasi-operasi yang umum dibutuhkan oleh sebuah
aplikasi berbasis web, misalnya mengakses database, mengirim email, memvalidasi
form, menangani session dan sebagainya.
7.
Extensible sistem dapat dikembangkan dengan mudah
menggunakan plugin dan helper, atau dengan menggunakan hooks.
8.
Tidak
memerlukan template engine meskipun CodeIgniter dilengkapi dengan template
parser sederhana yang dapat digunakan, tetapi hal ini tidak mengharuskan kita
untuk menggunakannya.
9.
Dokumentasi
lengkap dan jelas dari sekian banyak
framework, CodeIgniter adalah satu-satunya framework dengan dokumentasi yang lengkap
dan jelas.
framework
Framework adalah sekumpulan library yang
diorganisasikan pada sebuah rancangan arsitektur untuk memberikan kecepatan,
ketepatan, kemudahan dan konsistensi di dalam pengembangan aplikasi dari definisi
tersebut, framework mengandungunsur-unsur berikut :
·
Librari
·
Arsitektur
·
Metodologi
Framework menyediakan pustaka yang lengkap dan
terintegrasi. Unsur inilah yang paling
banyak memberikan keuntungan bagi
pengembang aplikasi. Sebagai contoh, framework aplikasi web menyediakan
library-library dasar berkaitan layanan web, seperti authentication, database
access, html generation, template engine, session management, caching,
searching, email, http, pdf, zip dan ajax. Framework juga menyediakan sarana extension
untuk pustaka-pustaka yang belum tersedia atau pustaka yang perlu ditingkatkan
kemampuannya.
2.7.1 Arsitektur
Sebuah aplikasi membutuhkan rancangan bagaimana
sistem dibangun, yaitu bagaimana elemen-elemen di dalam aplikasi disusun dan diintegrasikan,
seperti pengorganisasian file dan pustaka, dan bagaimana pustaka-pustaka
digunakan. Framework menyediakan struktur aplikasi dan bagaimana interaksi di
dalam struktur tersebut. MVC (Model View Controller) adalah salah satu pola
rancangan yang banyak digunakan dalam arsitektur aplikasi saat ini.
2.7.2 Manfaat
Framework
Beberapa manfaat yang dapat kita peroleh dengan
menggunakan framework
dalam pengembangan aplikasi :
·
penggunaan
komponen-komponen reusable, waktu pengembangan lebih singkat penerapan design patterns memudahkan
dalam rancangan, pengembangan dan pemeliharaan
sistem.
·
stability
dan reliability, aplikasi yang kita bangun lebih stabil dan handal karena berbasis pada 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 berbagai masalah keamanan yang
mungkin timbul
·
dokumentasi,
framework dapat mendisiplinkan kita untuk menulis dokumentasi untuk apa yang kita tulis
2.7.3 Pemilihan
Framework
Pemilihan framework yang salah akan menjadi sebuah
bencana bagi penggunanya.Ada beberapa hal yang harus di pertimbangkan dalam
memilih framework:
·
Pertama
dokumentasi dari framework itu sendiri. Dokumentasi sangat pentingadanya
mengingat pada umumnya tidak banyak orang/perusahaan yangmembuat framework
sendiri dalam membuat applikasi. Oleh karena itu kita akan sangat tergantung dengan dokumentasi yang di
sediakan oleh framework yang kita pilih.
·
Berikutnya
kesesuaian framework tersebut dengan applikasi apa yang hendak kita kembangkan. Kita memilih framework
dengan fasilitas yang pas dengan kebutuhan
kita.
·
Kemudian
perhatikan standar - standar framework yang ada, misalkan apakah framework tersebut MVC, apakah framework
tesebut mendukung versi sekian, apakah
mendukung templating dan lain-lain. Semakin banyak hal yang di support oleh framework tersebut semakin
baik. Karena hal tersebut akan mempengaruhi
kualitas dari software yang dikembangkan.
·
Lalu
yang terakhir adalah faktor kemudahan. Tentunya ini sangat tergantung dari sumberdaya yang ada.
ajax
Menyerupai J2EE, AJAX adalah 2 hal yang digabungkan
: merupakan sebuah teknologi, sekaligus arsitektir pemrograman.
·
AJAX sebagai sebuah teknologi
AJAX adalah
singkatan dari “Asynchronous JavaScript and XML”, yang dibuat dari serangkaian
teknologi dengan berbagai kemampuan : JavaScript, XML dan sebuah method
komunikasi asinkron antara client dan server.
3 teknologi yang
saling berinteraksi : JavaScript menangkap isyarat, gerak serta aksi.
Sebagaimana pada situasi yang mungkin terjadi, JavaScript menggunakan jalur
komunikasi pada server (object JavaScript dengan nama XMLHttpRequest) untuk
memanggil method yang tersimpan pada server dan menggunakan XML sebagai
mekanisme pengiriman data. Jika JavaScript pada client telah menerima respon
dari server, maka JavaScript akan menggunakan kemampuan bawaannya untuk memanipulasi struktur DOM halaman untuk
menambahkan content yang didapat dari server. Perubahan yang terjadi pada
struktur DOM kemudian diterjemahkan oleh browser pada client, sehingga
meningkatkan efek interaktivitas pada Member.
·
AJAX sebagai sebuah Arsitektur
Pada awalnya AJAX dibuat sebagai sebuah
rangkaian dari teknologi, namun kemudian AJAX mengalami perkembangan. Sebagai
contoh, adanya aplikasi web yang tidak menggunakan XML dalam mentransfer data
dari client ke server. Cara tersebut dilakukan dengan menggunakan object
XMLHttpRequest.
Berdasarkan realita di
atas, beberapa pihak mendefinisikan sebagai paradigma baru dalam pemrograman,
disamping teknologi yang menyediakan fungsionalitas. Mari kita bahas lebih
mendalam tentang arsitektur AJAX.
Pengembang telah
mengembangkan web programming sebelum hadirnya AJAX : action dari Member yang
membutuhkan data dari server ditampilkan dalam halaman yang digunakan, dimana
data request dari Member dikirimkan menuju server. Setelah mengolah halaman
tersebut, server menampilkan halaman baru bagi Member yang mengandung hasil
dari proses sebelumnya.Permasalah dari macam arsitektur tersebut adalah lambat
dan cukup memakan waktu, terutama bila dibandingkan dengan aplikasi desktop.
Aplikasi desktop mampu merespon cepat atas request dari Member, aplikasi ini
tidak memproses ulang masing – masing komponen interface yang akan ditampilkan
sebagai respon.
AJAX menggunakan
arsitektur pemrograman tersebut pada aplikasi Web. Daripada memberikan sebuah
halaman penuh pada server dan mendapatkan pula sebuah halaman penuh sebagai
hasil operasi, AJAX mengijinkan kita untuk mengirimkan request dalam ukuran
yang lebih kecil pada server. Halaman yang terpakai hanya termodifikasi untuk
menampilkan hasil, bukan tergantikan dengan sebuah halaman baru.
Faktor penting yang lain dari arsitektur AJAX adalah
request dan response dijalankan secara asinkron : AJAX tidak melarang Member
untuk melakukan proses lain pada halaman yang dipakai. Member dapat mengisi dan
menggunakan area lain pada halaman, sedangkan AJAX bekerja pada background.
Yang terakhir, AJAX
mengijinkan Member untuk berinteraksi dengan server sebagai respon terhadap
seluruh hal yang dilakukan oleh Member. Arsitektur yang ada sebelumnya hanya
mengijinkan kita untuk berkomunikasi dengan server pada saat Member menekan
tombol atau link yang akan mengirim data pada halaman. AJAX memperbolehkan
untuk me-request data baru dari server dalam bentuk mouseovers, keypress dan
even lain yang dikenali oleh JavaScript.
Personal Home Page (PHP)
PHP dibuat oleh Rasmus Lerdorf pada tahun 1994, pada
awalnya tidak untuk didistribusikan dan hanya digunakan pada homepage
pribadinya. Pada tahun 1995 dikeluarkan versi pertama yang dapat digunakan leh
umum dengan nama personal home page tools. Ditulis kembali pada pertengahan
1995 dan diberi nama sebagai PHP/F1 version 2. F1 berasal dari paket Rasmus
yang mana merupakan html interpreter untuk data form. Pada hasil kombinasi
tersebut juga ditambah dukungan SQL. PHP/F1 terus berkembang dan banyak orang
mulai memberikan kontribusi dalam pengembangannya.
Pada tahun 1996 PHP/F1 diperkirakan telah digunakan
15.000 situs web dunia, dan pada pertengahan 1997 jumlah ini berkembang
melebihi 50.000. pada pertengahan 1997 juga terjadi perubahan pada PHP dimana
berubah menjadi proyek yang didukung oleh team yang lebih terorganisasi.
Parsernya ditulis ulang oleh Zeev Suraski dan Andi Gutmans dan parser baru
inilah yang membentuk basis untuk PHP versi 3. Banyak kode utility telah
selesai ditulis kembali.
PHP seperti kita ketahui ialah bahasa pemrograman
berbasis web. Bahasa ini mempunyai kelebihan yaitu kompabilitasnya dengan
berbagai macam jenis database ,dukungan dengan berbagai macam jenis sistem
operasi.
2.5.2 Kelebihan
PHP
Ketika e-commerce semakin berkembang, situs-situs
yang statispun semakin ditinggalkan, karena dianggap sudah tidak memenuhi
keinginan pasar, padahal situs tersebut harus tetap dinamis. Pada saat ini
bahasa PERL dan CGI sudah jauh ketinggalan jaman sehingga sebagian besar
designer web banyak beralih ke bahasa server-side scripting yang lebih dinamis
seperti PHP.
Seluruh aplikasi berbasis web dapat dibuat dengan
PHP. Namun kekuatanyang paling utama PHP adalah pada konektivitasnya dengan
system database di dalam web. Sistem database yang dapat didukung oleh PHP
adalah Oracle, MySQL , Sybase, PostgreSQL, dan lainnya. PHP dapat berjalan di
berbagai system operasi seperti windows 98/NT, UNIX/LINUX, solaris maupun
macintosh.
Software ini juga dapat berjalan pada web server
seperti PWS (Personal Web Server), Apache, 2S, AOLServer, fhttpd, phttpd dan
sebagainya. PHP juga merupakan bahasa pemograman yang dapat kita kembangkan
sendiri seperti untuk menambah fungsi-fungsi baru. Keunggulan lainnya dari PHP
adalah bahwa PHP juga mendukung komunikasi dengan layanan seperti protocol
IMAP, SNMP, NNTP, POP3 dan bahkan HTTP. PHP dapat diinstal sebagai bagian atau
modul dari apache web server atau sebagai CGI script yang mandiri.
Banyak keuntungan yang dapat diperoleh jika
menggunakan PHP sebagai modul dari apache, di antaranya adalah :
1.
Tingkat
keamanan yang cukup tinggi
2.
Waktu
eksekusi yang lebih cepat dibandingkan dengan bahasa pemograman web lainnya
yang berorientasi pada server-side scripting.
3.
Akses
ke sistem database yang lebih fleksibel. seperti MySQL
Subscribe to:
Posts (Atom)