By ArifaGora on 14th October

CI

     oleh : Candra Utama, Desember 2011

        Apa sih sebenernya CodeIgniter atau yang sering disebut dengan CI itu? Jadi, kalau kita masih inget dengan OOP (Object Oriented Programming) yang mana masing-masing dari bagian dalam komponen, dipisah berdasarkan model dan tampilannya kemudian digabung dalam satu jembatan, yang menghubungkan antara model dan tampilan tersebut, yang biasa disebut dengan Controller. Sampai di sini paham kan?
Sekarang, langsung kita coba dalami saja, apa yang sebenarnya dimaksud dengan CodeIgniter? Dan bagaimana contoh penggunaannya dalam pembuatan Web?

CodeIgniter adalah CodeIgniter (CI) adalah suatu framework pengembangan aplikasi web berbasis PHP. CI menyediakan banyak library sehingga memungkinkan mengembangkan aplikasi dengan lebih cepat. Salah satu keunggulan CI dibanding framework lain adalah kesederhanaan penggunaannya dan kecepatan eksekusinya.

CodeIgniter cocok untuk developer yang :

  • menginginkan framework yang sederhana
  • membutuhkan kinerja yang luar biasa
  • membutuhkan kompatibilitas yang luas dengan berbagai web hosting
  • menginginkan framework yang hampir tidak ada konfigurasi
  • menginginkan framework yang tidak menggunakan command line
  • menginginkan framework yang tidak mengharuskan mematuhi aturan penulisan source code
  • tidak ingin dipaksa harus mempelajari templating language
  • tidak menyukai kompleksitas, lebih menyukai solusi yang sederhana
  • membutuhkan dokumentasi yang baik

Keunggulan CodeIgniter

Berikut merupakan keunggulan dari CodeIgniter :

  • gratis
  • ringan
  • cepat
  • menggunakan Konsep MVC (Models, Views, Controllers)
  • clean URL
  • library yang lengkap
  • dapat diperluas
  • dukungan teknis yang lengkap di forum CI

Alur Proses Aplikasi CodeIgniter

alur Ci

 

 

 

Gambar Alur proses bagan CI

1. Index.php

=> berfungsi sebagai pengendali awal, menginisialisasi sumber daya utama yang dibutuhkan CodeIgniter.

2. Router

=> memeriksa paket HTTP request untuk menentukan aksi apa yang harus dilakukan oleh sistem.

3. Jika cache tersedia, maka halaman langsung dikirim ke browser, eksekusi sistem yang normal akan dilewati

4. Security

=> sebelum Application Controller dieksekusi, paket HTTP request dan semua data yang dikirimkan pengguna akan disaring

terlebih dahulu oleh Security Class

5. Application Controller

=> menginisialisasi model, library utama, helpers dan semua sumberdaya yang dibutuhkan untuk setiap request.

6. Antarmuka aplikasi (view) yang sudah disiapkan dikirimkan ke browser.

=> Jika caching diaktifkan, maka view akan disimpan sementara untuk request  yang sama berikutnya.

Karakteristik CodeIgniter

Seperti framework PHP pada umumnya, CodeIgniter menggunakan konsep MVC serta menyediakan banyak library dan helper untuk digunakan.

a. Model

Model, merepresentasikan struktur data. Biasanya class model akan berisi fungsi-fungsi untuk mengambil data, insert data, dan update data ke database. Pada CI, model tidak harus digunakan, tapi hal ini akan menghilangkan konsep MVC itu sendiri.

b. View

Merupakan informasi / halaman yang ditampilkan ke pengguna. Sebuah view biasanya adalah sebuah web page, tapi di CodeIgniter

view juga dapat berupa bagian-bagian halaman web, seperti header dan footer. Bahkan view juga dapat berupa halaman RSS.

c. Controller

Controller, berfungsi sebagai penghubung antara Model, View dan dengan sumber daya lain yang digunakan untuk memproses HTTP request. Controller juga biasanya berfungsi sebagai inti pemrosesan lojik aplikasi.

d. Libraries

Merupakan  macam-macam class yang masing-masing mempunyai fungsi khusus yang dapat digunakan untuk mengembangkan aplikasi. Contoh library database, email, validasi form, dan lain-lain.

e. Helper

Seperti namanya berfungsi menolong untuk melakukan tugas-tugas tertentu. Setiap file helper terdiri dari kumpulan fungsi (function). Contoh URL Helper yang berfungsi untuk membuat link, Form helper untuk membuat elemen-elemen form. Tidak seperti library, helper tidak menggunakan format Object Oriented, sehingga dapat digunakan dimanapun, baik itu di model, view, controller dan library.

CodeIgniter URL

Secara default, URL pada CodeIgniter didesain agar search-engine dan human-friendly, menggunakan pendekatan segment-based.

example.com/index.php/class/function/parameter1/parameter2

a.  Index.php merupakan segment ke-0.

b.  Segment pertama merepresentasikan class controller yang diakses.

c.  Segment kedua merepresentasikan nama method yang dipanggil pada

class tersebut.

d.  Segment ketiga dan seterusnya bersifat optional, merepresentasikan

parameter masukan untuk fungsi yang dipanggil tersebut.

Memulai menggunakan CodeIgniter

Untuk memulai menggunakan CodeIgniter, langkah-langkahnya adalah

sebagai berikut :

  1. Download CI

CodeIgniter dapat di-download gratis di website resminya yaitu www.codeigniter.com.

  1. Instalasi

Extract file CodeIgniter yang sudah di-download  sebelumnya ke direktori htdocs, kemudian ganti nama folder CodeIgniter_2.x.x tersebut dengan nama yang kita kehendaki .

Struktur Folder

Berikut akan dibahas fungsi masing-masing folder dan file default dari CodeIgniter :

1

 

 

 

 

Struktur folder di dalam file default CI

  • Application, berisi folder dan file yang terkait dengan aplikasi yang akan dibuat. Kita akan banyak bekerja pada direktori application ini.
  • System, berisi file-file inti framework CodeIgniter. Kita tidak akan mengubah apapun pada direktori system ini.
  • User_guide, berisi file-file dokumentasi CI yang dapat diakses melalui browser.
  • Index.php, file konfigurasi awal CodeIgniter.

Aplikasi yang akan kita bangun tentunya menggunakan JavaScript, gambar dan CSS. Kita dapat buat direktori untuk masing-masing sumber daya tersebut pada root aplikasi :

2

 

 

 

 

 

Struktur folder css dan javascript di dalam file default CI

Direktori Aplikasi :

3

 

 

 

 

 

 

 

 

 

 

Struktur direktori aplikasi

Berikut penjelasan direktori-direktori utama yang akan sering kita gunakan :

  1. config, berisi file-file yang terkait konfigurasi dasar aplikasi
  2. controllers, berisi file-file controller dari aplikasi yang dibangun. Simpan seluruh file controller aplikasi pada folder ini
  3. core, jika ingin memperluas class-class inti CodeIgniter, maka simpan file class yang Anda kembangkan tersebut pada direktori ini
  4. helpers, berisi file-file helper yang Anda buat sendiri
  5. libraries, berisi file-file library yang Anda buat sendiri
  6. logs, jika error log pada config diaktifkan maka file error log akan tersimpan pada direktori ini
  7. models, berisi file-file model dari aplikasi yang dibangun. Simpan seluruh file model aplikasi pada folder ini
  8. views, berisi file-file view dari aplikasi yang dibangun. Simpan seluruh file view aplikasi pada folder ini.

There are no comments yet.

Leave a Comment

Your email address will not be published. Required fields are marked *