CodeIgniter adalah aplikasi open source yang berupa framework dengan model MVC (Model, View, Controller) untuk membangun website dinamis dengan menggunakan PHP. CodeIgniter memudahkan developer untuk membuat aplikasi web dengan cepat dan mudah dibandingkan dengan membuatnya dari awal. CodeIgniter dirilis pertama kali pada 28 Februari 2006. Versi terakhir adalah 1.7.2 dapat dilihat di website resminya (ada dibagian akhir tulisan ini).
Sebelum membahas lebih jauh tentang salah satu framework PHP ini, mungkin kalian ada yang masih bingung apa itu Framework, apa itu VMC (Model, View, Controller)?
Framework secara sederhana dapat diartikan kumpulan dari fungsi-fungsi/prosedur-prosedur dan class-class untuk tujuan tertentu yang sudah siap digunakan sehingga bisa lebih mempermudah dan mempercepat pekerjaan seorang pemrograman, tanpa harus membuat fungsi atau class dari awal.
Ada beberapa alasan mengapa menggunakan Framework:
- Mempercepat dan mempermudah pembangunan sebuah aplikasi web.
- Relatif memudahkan dalam proses maintenance karena sudah ada pola tertentu dalam sebuah framework (dengan syarat programmer mengikuti pola standar yang ada)
- Umumnya framework menyediakan fasilitas-fasilitas yang umum dipakai sehingga kita tidak perlu membangun dari awal (misalnya validasi, ORM, pagination, multiple database, scaffolding, pengaturan session, error handling, dll
- Lebih bebas dalam pengembangan jika dibandingkan CMS
Sekarang masuk ke pengertian VMC (Model View Controller).
Model View Controller merupakan suatu konsep yang cukup populer dalam pembangunan aplikasi web, berawal pada bahasa pemrograman Small Talk, MVC memisahkan pengembangan aplikasi berdasarkan komponen utama yang membangun sebuah aplikasi seperti manipulasi data, user interface, dan bagian yang menjadi kontrol aplikasi. Terdapat 3 jenis komponen yang membangun suatu MVC pattern dalam suatu aplikasi yaitu :
- View, merupakan bagian yang menangani presentation logic. Pada suatu aplikasi web bagian ini biasanya berupa file template HTML, yang diatur oleh controller. View berfungsi untuk menerima dan merepresentasikan data kepada user. Bagian ini tidak memiliki akses langsung terhadap bagian model.
- Model, biasanya berhubungan langsung dengan database untuk memanipulasi data (insert, update, delete, search), menangani validasi dari bagian controller, namun tidak dapat berhubungan langsung dengan bagian view.
- Controller, merupakan bagian yang mengatur hubungan antara bagian model dan bagian view, controller berfungsi untuk menerima request dan data dari user kemudian menentukan apa yang akan diproses oleh aplikasi.
Dengan menggunakan prinsip MVC suatu aplikasi dapat dikembangkan sesuai dengan kemampuan developernya, yaitu programmer yang menangani bagian model dan controller, sedangkan designer yang menangani bagian view, sehingga penggunaan arsitektur MVC dapat meningkatkan maintanability dan organisasi kode. Walaupun demikian dibutuhkan komunikasi yang baik antara programmer dan designer dalam menangani variabel-variabel yang akan ditampilkan.
Ada beberapa kelebihan CodeIgniter (CI) dibandingkan dengan Framework PHP lain,
- Performa sangat cepat : salah satu alasan tidak menggunakan framework adalah karena eksekusinya yang lebih lambat daripada PHP from the scracth, tapi Codeigniter sangat cepat bahkan mungkin bisa dibilang codeigniter merupakan framework yang paling cepat dibanding framework yang lain.
- Konfigurasi yang sangat minim (nearly zero configuration) : tentu saja untuk menyesuaikan dengan database dan keleluasaan routing tetap diizinkan melakukan konfigurasi dengan mengubah beberapa file konfigurasi seperti database.php atau autoload.php, namun untuk menggunakan codeigniter dengan setting standard, anda hanya perlu merubah sedikit saja file pada folder config.
- Banyak komunitas: dengan banyaknya komunitas CI ini, memudahkan kita untuk berinteraksi dengan yang lain, baik itu bertanya atau teknologi terbaru.
- Dokumentasi yang sangat lengkap : Setiap paket instalasi codeigniter sudah disertai user guide yang sangat bagus dan lengkap untuk dijadikan permulaan, bahasanya pun mudah dipahami.
- Dan banyak lagi yang lainnya.
Beberapa website yang menggunakan CodeIgniter ini antara lain: TvOne.co.id, Kompas.com dan banyak lagi yang lainnya. Anda bisa membaca secara lengkap tentang CI ini dibeberapa alamat di bawah:
Situs Resmi: http://www.codeigniter.com
Codeigniter Indonesia: http://www.codeigniter-id.com
Video Tutorial Instalasi CI: http://codeigniter.com/tutorials/watch/intro
Video Tutorial Membuat Blog hanya 20 menit dengan CI: http://codeigniter.com/tutorials/watch/blog
Dan Banyak lagi yang lainnya.
Cara menginstall Codeigniter, dapat dibaca disini.
Thanks om
jadi tau ni sekarang ane
ane coba dulu yeh… thx ilmunya
numpang nanya gan…
jika menggunakana flexigrid di CI bagaimana y…
terima kasih…
Disini [ http://flexigrid.eyeviewdesign.com ] gan, langsung ke TKP aja
Hatur nuhun kang info na ..
😀
Bagus Artikelny…
Skrg Lagi coba2 bljr nih ttg konsep MVC pake CodeIgniter…….
http://www.codeigniter-id.com/
erorr…ad yang slah scriptnya
apa wordpress ntu dikembangkan dari MVC CI ya mas ?
Kalo untuk performance. masih unggul Yii framework. benar2 memanfaatkan tenologi php 5.
tapi CI jg bagus kok.
install ci di linux gimana cara’a????
terangin CI yang Pake ORM datamapper dong pa???
sembrawutan nih ga begitu paham
eh punten,
tebalik singkatannya, harusnya kan MVC 😀
Oh iya, baru nyadar he he he, makasih neng…
Dalam pikiran suka kebayang Virtual Mesin (VM) he he…
hatur nuhun infona kang
Ada contoh ga dibuat pake codeigniter.thanks
#To piteng uropdana:
Ada, silahkan didownload disini: http://codeigniter.com/tutorials/
thanks info nya gan…
Thanks infonya…baru belajar nih.
baru mo mulai codeigniter,,,,
macih seneng pake cms…
Assalamualaikum, mas ponoooo… hatur nuhun artikelnya, eh mas punya tutor yang lengkep ga codeigniternya, kalo ada emailin ya ke im4nnugraha@yahoo.com, gi belajar nih yang kaya gituan (newbi) hehe… Syukron.
codeigniter lbh bagus drpd menggunakan cms joomla ga?
waduh saya jadi eror gini
halo ..pa…!! ini denga Leonardo Siagian.,mantan mahasiswa bapa…tamatan tahun 2010..!!mudah2an bapa masih ingat ya…!!..
Bisa minta tips pa biar gampang belajar CodeIgniter???,soalnya sekarang lagi kerja sambil kuliah..,tapi di tempat kerja di suruh buat belajar CodeIgniter pa…!!..di mohon pencerahannya pa…!! trima kasih pa,,
# To iman nugraha:
Wa’alaikum Salam
Di CI (CodeIgniter) sendiri sudah ada yang namanya User Guide mirip dengan tutorialnya, disitu sudah lengkap dan detail. Jadi ketika kita install CI, otomatis user guide nya pun akan terinstall.
# To Selular88:
CodeIgniter adalah Framework, sedangkan Joomla adalah CMS. Framework berarti kumpulan fungsi2/library yang siap pakai, sedangkan CMS (Content Management System) semacam template. Kalau CMS orang non programming juga bisa, tapi kalau CI harus bisa programming
# To leonardoagian:
Iya saya masih Ingat.
Tipsnya kuasai dulu cara kerja (konsep) MVC (Model View Controller), dan kalau terbiasa programming terstruktur, coba belajar OOP di PHP.
oh..iya..,terima kasih pa ats tips nya…!!! mudah2an cepat..belajrnya..,terima kasih sekali lagi pa…,sukes buat bapa…!!..,n lebih diperbanyak lagi pa postingan yang berbau php (OOP dan CodeIgniter)…ya pa..!!…
mantab kang, kebetulan saya lagi belajar CI
nice 🙂
saya baru belajar CI, ada User Guide versi Indonesianya ga mas??
oke..hehe..
baru mau belajar ni..jadi tau deh skrg..thx.
# To leonardoagian:
OK, sukses juga di IPB nya, smoga cepet lulus dan berhasil
# To iben:
Selamat belajar, semoga berhasil
# To Mila:
Tengkyu
# To iponk:
Kalau mau yang versi bahasa Indonesia bisa beli bukunya banyak di toko buku he he he, atau ada di web codeigniter indonesaia http://www.codeigniter-id.com
# To amrew:
Sip, selamat belajar
Mas, ciri web yg pake framework codeigniter itu seperti apa ya?
Nah kalau web nya mas pake framework gak?
makasih tutorialnya
kak, q mau tanya…
ada gak tutorial untuk membuat berita online….
pliss
kasih aq pencerahan ya…
trima kasih….
tapi saya cari tutorial membut berita dengan CI gak da…..
terima kasih….
saya akan mencoba dulu…
🙂
thanks, gan
lagi pengen bljr codeigniter nih.gelar tiker dl mastah 😀
wah, lengkap banget neh pengertianya…
googling, langsung nemu neh page paling atas…
ijin share gan, bolehkah dipajang pada blog ane?
soalnya ane bingung klo menyangkut nulis penjelasan/pengertian kayak gini…
berhubung ane juga mau menuliskan tutorial tentang CI…
ditunggu gan…
oke
boleeeeeeh minta situs yang sama seperti di buku ?? semunya di bahas dari awal termasuk fungsi2 semua folder di dalamnya ??
terimakasih
wah kata baru yang asalnya ga ngerti jadi ada pencerahan nich…
intinya mungkin agk sama dengan CMS cuman pasti ada bedanya…
thanks dah ngasih pencerahan awal hehe
izin repost yaahh.. 🙂
Salam kenal mas, saya minta tolong nih, saya punya pr mengerjakan tugas akhir ttg ci, temanya membangun toko online
kalo bisa, dsertakan contoh sderhana tntang penggunaan CI, sehingga mudah bgi para newbie untuk memahami CI itu sndiri
matur suwun mas…
saya nyobo rumiyin….
hehehehe
Topik tak tertandingi, sangat menarik untuk saya))))
Bagaimana cara untuk menampilkan layout dengan CI?