modul ci_01

6
Tim Asisten Pemrograman Internet ILMU KOMPUTER | UNIVERSITAS PENDIDIKAN INDONESIA CodeIgniter FRAMEWORK, MVC, DAN INSTALASI

Upload: mohamad-tri-ramdhani

Post on 29-Sep-2015

4 views

Category:

Documents


3 download

DESCRIPTION

Dokumen ini berisi pengenalan awal terhadap Framework PHP CodeIgniter

TRANSCRIPT

  • Tim Asisten Pemrograman Internet ILMU KOMPUTER | UNIVERSITAS PENDIDIKAN INDONESIA

    CodeIgniter FRAMEWORK, MVC, DAN INSTALASI

  • FRAMEWORK, MVC, DAN INSTALASI 1

    Apa itu Framework? Framework merupakan sebuah struktur konseptual dasar yang digunakan untuk memecahkan suatu

    permasalahan, bahkan untuk isu-isu yang kompleks. Framework berisi sekumpulan arsitektur/konsep

    yang dapat mempermudah dalam pemecahan masalah.

    Framework banyak digunakan karena ada kemudahan yang ditawarkan dalam membangun sebuah

    aplikasi. Framework biasanya sudah tersedia struktur yang baik; standard coding, best practice, design

    pattern, dan common function.

    Standard coding adalah sebuah standard yang harus diikuti oleh programmer untuk menulis code.

    Best practice adalah kumpulan-kumpulan action yang telah teruji oleh para expert.

    Design pattern adalah teknik-teknik yang menjadi best practice.

    Common function adalah fungsi-fungsi atau library yang telah umum digunakan dalam

    pengembangan sebuah sistem.

    Keuntungan yang didapat dalam menggunakan framework, antara lain:

    - Menghemat waktu pengembangan; dengan struktur dan library yang telah disediakan oleh

    framework maka tidak perlu lagi memikirkan hal-hal tersebut, jadi hanya fokus pada bisnis proses

    yang akan dikerjakan.

    - Reuse of code; dengan menggunakan framework, maka pekerjaan kita akan memiliki struktur yang

    baku, sehingga kita dapat menggunakannya kembali di proyek lainnya.

    - Bantuan komunitas; ada komunitas-komunitas yang siap membantu jika ada permasalahan, selain

    itu juga bisa berbagi ilmu sehingga dapat meningkatkan kemampuan pemrograman kita.

    - Kumpulan best practice; sebuah framework merupakan kumpulan best practice yang sudah teruji.

    Jadi kita dapat meningkatkan kualitas kode kita.

    Apa itu MVC? MVC merupakan singkatan dari Model View Controller. MVC adalah sebuah pattern/teknik

    pemrograman yang memisahkan business logic (alur pikir), data logic (pengolahan data) dan

    presentation logic (antarmuka aplikasi), atau secara sederhana adalah memisahkan antara proses, data,

    dan desain. Komponen-komponen pada MVC, antara lain:

    1. Model

    Model berhubungan dengan data dan interaksi ke database atau webservice. Model juga

    merepresentasikan struktur data dari aplikasi yang bisa berupa basis data maupun data lain,

    misalnya dalam bentuk teks, file XML maupun webservice. Biasanya di dalam model akan berisi class

    dan fungsi untuk mengambil, melakukan update dan menghapus data. Model biasanya akan

    berhubungan dengan perintah-perintah query SQL.

    2. View

    View berhubungan dengan segala sesuatu yang akan ditampilkan ke end-user. Bisa berupa halaman

    web, rss, javascript, dan lain-lain. Kita harus menghindari adanya pemrosesan data di view. Di dalam

    view hanya berisi variabel-variabel yang berisi data yang siap ditampilkan. View dapat dikatakan

    sebagai halaman website yang dibuat dengan menggunakan HTML dan bantuan CSS atau

    JavaScript. View dikhususkan untun menampilkan data-data hasil pengolahan dari model dan

    controller.

  • FRAMEWORK, MVC, DAN INSTALASI 2

    3. Controller

    Controller bertindak sebagai penghubung antara data (model) dengan view. Di dalam controller

    inilah terdapat class-class dan fungsi-fungsi yang memproses permintaan data dari view ke dalam

    struktur data di dalam model. Controller menyediakan berbagai variabel yang akan ditampilkan di

    view, memanggil model untuk melakukan akses ke basis data, menyediakan penanganan kesalahan

    (error handling), mengerjakan proses logika dari aplikasi serta melakukan validasi terhadap input.

    MVC pada CodeIgniter Alur kerja CodeIgniter dapat dilihat pada gambar berikut:

    Dari gambar di atas, dapat dijelaskan bahwa browser (index.php) berinteraksi melalui Controller.

    Controller-lah yang akan menerima dan membalas semua request dari browser. Untuk data, maka

    controller akan meminta ke model dan untuk UI/template akan meminta ke view. Jadi Otak dari aplikasi

    ada di controller, Wajah/Muka ada di view, dan Data ada di model. Ketika browser meminta sebuah

    halaman web, maka router akan mencarikan controller mana yang harus menangani request tersebut.

    Setelah itu, barulah si controller menggunakan model untuk mengakses data dan ditampilkan melalui

    view.

    Instalasi dan Konfigurasi CodeIgniter Sebelum memulai menggunakan CodeIgniter, kita perlu melakukan konfigurasi terhadap CodeIgniter

    terlebih dahulu.

    Instalasi CodeIgniter

    Pertama, silahkan download terlebih dahulu file CodeIgniter nya (versi 2) melalui alamat website:

    http://www.codeigniter.com/download

  • FRAMEWORK, MVC, DAN INSTALASI 3

    Copy file CodeIgniter-2.2.1.zip ke dalam folder [htdocs], kemudian ekstrak dan ubah nama

    foldernya sesuai dengan nama proyek yang diinginkan. Untuk kali ini agar seragam, silahkan

    ubah namanya menjadi ci_sample.

    Jalankan web servernya, yang digunakan di modul ini adalah xampp.

    Jalankan aplikasi melalui browser, proses instalasi berhasil jika muncul welcome message dari

    CodeIgniter.

  • FRAMEWORK, MVC, DAN INSTALASI 4

    Struktur Folder

    Struktur utama dari CodeIgniter terbagi menjadi dua, yaitu application dan system. Application

    adalah tempat kita menyimpan kode yang akan dibuat, sedangkan system berisi library-library bawaan

    CodeIgniter.

    Konfigurasi CodeIgniter

    Konfigurasi standar yang biasa dilakukan dalam membangun sebuah aplikasi biasanya ada pada file

    config, database, autoload, dan routes.

    File-file konfigurasi tersebut terdapat dalam folder application/config.

    config.php

    Pada file kofigurasi config.php berisi konfigurasi secara umum mengenai CodeIgniter, di antaranya:

    o $config[base_url] konfigurasi ini berisi alamat url sebuah aplikasi. Jika menggunakan

    helper url, maka konfigurasi ini harus di-set dengan benar. Contoh: aplikasi Anda akan diakses

    dengan menggunakan domain http://www.example.com/app_ci maka pada konfigurasi ini

    harus diisikan:

    Tetapi jika ingin menggunakan base_url yang lebih fleksibel maka dapat menggantinya dengan

    variabel server:

    o $config[index_page] konfigurasi ini berisi file yang menjadi frontcontroller. Konfigurasi ini

    berhubungan dengan base_url. Jika menggunakan .htaccess untuk mempercantik url, maka isi

    variabel ini harus dikosongkan.

    autoload.php

    Konfigurasi ini bertujuan untuk menentukan sumber daya apa yang akan diload secara otomatis.

    Cara penggunaannya sederhana, misalnya kita ingin meload library database, pagination, session,

    dan lain-lain secara otomatis maka kita tinggal mengubahnya menjadi:

    routes.php

    Konfigurasi di file ini bertujuan untuk menentukan kemana routing oleh library route akan dilakukan.

    Hal paling sederhana yang harus dilakukan adalah mengubah default controller (controller yang

  • FRAMEWORK, MVC, DAN INSTALASI 5

    akan dibuka ketika tidak ada url yang diberikan oleh browser). Misalnya alamat websitenya

    www.example.com. Maka ketika membuka website tersebut maka secara otomatis CodeIgniter akan

    mengalihkan ke controller default.

    database.php

    Konfigurasi di file ini bertujuan untuk menentukan database dan pengaturan server yang digunakan.