BELAJAR CODE IGNITER PART 1
Ada baiknya sebelum anda belajar framework ini perlu belajar pemrograman dengan bahasa PHP, mengerti beberapa query sql dan beberapa algoritma dasar. anda bisa pelajari di kategori PHP, SQL dan Algoritma Di PHP.
Kenapa menggunakan code iginiter ?...
Codeigniter memiliki banyak fitur (fasilitas) yang membantu para pengembang PHP untuk dapat membuat aplikasi web secara mudah dan cepat.
Codeigniter memiliki desain yang lebih sederhana dan bersifat fleksibel (tidak kaku).
Codeigniter mengizinkan para pengembang web untuk menggunakan framework secara parsial atau secara keseluruhan.
Ini berarti bahwa codeigniter masih memberikan kebebasan kepada pengembang untuk menulis bagian-bagian kode tertentu di dalam aplikasi menggunakan cara konvensional (tanpa framework).
Codeigniter menganut pola desain atau arsitektur Model-View-Controller (MVC) yang memisahkan bagian kode untuk penanganan proses bisnis dengan bagian kode untuk keperluan presentasi (tampilan).
Dengan menggunakan pola desain ini, memungkinkan para pengembangan web untuk mengerjakan aplikasi berbasis web secara bersama (teamwork).
Dengan begitu para pengembang web lebih berfokus pada bagiannya masing-masing tanpa mengganggu bagian yang lain.
Sehingga aplikasi yang dibangun akan selesai lebih cepat
Adapun beberapa keunggulan yang ditawarkan oleh codeigniter adalah sebagai berikut:
- Codeigniter adalah framework PHP yang bersifat open-source.
- Codeigniter memiliki ukuran yang kecil dibandingkan dengan framework lain.
- Setelah proses intalasi, framework Codeigniter hanya berukuran kurang lebih 2 MB (tanpa dokumentasi atau jika user_guide dihapus).
- Aplikasi yang dibuat menggunakan codeigniter bisa bejalan cepat.
- Codeigniter menggunakan pola desain Model-View-Controller (MVC) sehingga satu file tidak terlalu berisi banyak kode. Hal ini menjadikan kode lebih mudah dibaca, dipahami, dan dipelihara di kemudian hari.
- Codeigniter dapat diperluas sesuai dengan kebutuhan.
- Codeigniter terdokumentasi dengan baik informasi tentang pustaka (Library) dan fungsi yang disediakan oleh codeigniter dapat diperoleh melalui dokumentasi yang disertakan di dalam paket distribusinya.
- Codeigniter memiliki library dan helper yang lengkap.
- Codeigniter memiliki security yang handal seperti xss filtering, session encryption, dan lain-lain.
- Codeigniter mengizinkan pengembang web menggunakan library atau helper yang tidak disediakan oleh codeigniter seperti: Google Map API, Facebook API, fpdf, dan lain sebagainya.
- Codeigniter bersifat tidak kaku. sehingga memberikan kebebasan kepada developer web untuk mengembangkan aplikasi berbasis web bahkan tanpa framework.
- Codeigniter memiliki komunitas yang besar dan tersebar di seluruh dunia, sehingga memudahkan para pengembang web untuk memecahkan permasalahan (problem solving) yang dihadapi para pengembang web di saat mengembangkan aplikasi berbasis web.
- Codeigniter mendukung banyak RDBMS (Relational Database Management System) seperti MySQL, MySQLi, SQL Server, Oracle, Maria DB, PostgreSQL, SQLite, dan lain sebagainya.
- Codeigniter pada dasarnya menganut Clean URL dan mendukung SEO (Search Engine Optimazation). Sehingga setiap aplikasi yang dibangun menggunakan codeigniter lebih mudah di index oleh search engine populer seperti google, yahoo, msn, dan lain sebagainya.
Gambar1. Bagan MVC
Seperti yang saya singgung sebelumnya bahwa codeigniter menganut arsitektur Model-View-Controller (MVC).
Jadi, sangatlah penting bagi Anda untuk mengetahui konsep dari desain MVC ini.
Apa itu Model-View-Controller (MVC)?
MVC adalah sebuah pendekatan yang ditempuh untuk memisahkan aplikasi menjadi tiga bagian, yaitu Model, View, dan Controller.
MVC memberikan struktur kepada aplikasi, sehingga dapat di capai “code reusability”.
Berikut penjabaran dari komponen-komponen MVC:
1. Model
Model merepresentasikan data yang digunakan aplikasi, seperti database, RSS, atau data yang diperoleh dari pemanggilan API, dan aksi yang melibatkan operasi Create, Read, Update, dan Delete (CRUD) data.
2. View
View adalah informasi yang ditampilkan kepada user melalui browser. Biasanya berupa file HTML atau kode PHP yang menyusun template untuk sebuah website.
Pada codeigniter, view dapat berupa bagian-bagian sebuah halaman, template, atau jenis lain dari halaman atau template.
3. Controller
Controller adalah “business logic” yang bertugas sebagai jembatan antara model dan view.
Controller akan merespon HTTP request yang datang dari user (melalui browser), dari request ini controller akan menentukan apa yang harus dilakukan.
Didalam codeigniter, secara detail MVC digambarkan sebagai berikut:
Gambar 2. Detail MVC
Pada gambar diatas, file “index.php” berperan sebagai controller utama yang memanggil fungsi-fungsi dasar yang digunakan untuk menjalankan controller.
Router memeriksa HTTP request kemudian memutuskan Controller mana yang akan digunakan untuk menangani request tersebut.
Apabila file cache tersedia, alur aplikasi akan dilewati dan file cache tersebut yang akan dikirimkan ke browser pengguna.
Sebelum controller dipanggil, HTTP request dan data yang dikirimkan pengguna akan di sortir terlebih dahulu untuk alasan keamanan.
Controller memanggil file Model, Library, Helper, dan file lain yang dibutuhkan untuk menangani HTTP request.
Hasil akhirnya akan ditampilkan ole file View kemudian dikirimkan ke browser pengguna untuk ditampilkan.
Jika modus caching diaktifkan, hasil view akan di-cache terlebih dahulu.
Sehingga jika nanti ada request yang sama, bisa langsung digunakan.
Comments ()