I Putu Arya Dharmaadi, S.T., M.T.
Dosen Jurusan Teknologi Informasi
Universitas Udayana
http://aryadharmaadi.com
22 November 2015 http://aryadharmaadi.com 2
Apa itu Framework?
 Framework merupakan sebuah KERANGKA KERJA
yang MEMUDAHKAN PENGEMBANG aplikasi
untuk membangun software sesuai dengan bahasa
pemrograman tertentu.
 Framework untuk bahasa pemrograman PHP
umumnya terdiri dari SEKUMPULAN FOLDER yang
berisi file-file PHP, dimana file-file tersebut
merupakan CLASS LIBRARY, HELPER, PLUGIN,
atau KONFIGURASI lainnya.
22 November 2015 http://aryadharmaadi.com 3
Mengapa Menggunakan
Framework?
 Pembuatan aplikasi dengan memanfaatkan framework
akan sangat membantu dari segi KECEPATAN
PENGEMBANGAN dan efisiensi source code aplikasi
 Hal tersebut disebabkan karena
 pengembang tinggal mengikuti alur framework,
 pengembang bisa memanfaatkan library dari framework
untuk perintah-perintah umum, seperti CRUD (Create
Read Update Delete) data, session, dll.
 setiap project yang dibuat akan memiliki alur yang sama
persis, sehingga saat pembuatan project berikutnya bisa
meng-copy project sebelumnya, lalu sedikit dimodifikasi
22 November 2015 http://aryadharmaadi.com 4
Beda Framework dengan CMS
 Framework berbeda jika dibandingkan dengan CMS
(Content Management System), walaupun sama-sama
mempermudah pembuatan web.
 Pada CMS (misalnya wordpress), pengembang tidak
perlu menuliskan code program PHP karena
semuanya sudah jadi, tinggal mengatur konten dan
tampilannya saja
 Sedangkan Framework, pengembang harus
menuliskan code program PHP sesuai dengan ruang
lingkup yang diatur oleh framework
22 November 2015 http://aryadharmaadi.com 5
Framework CI
 CodeIgniter (CI) merupakan framework PHP yang
tangguh dan sangat mudah dipelajari sehingga
diperuntukkan kepada developer PHP yang ingin
membangun aplikasi web yang full-featured dengan
mudah dan elegan.
 CI hadir dengan dokumentasi yang lengkap dan
menyediakan contoh-contoh koding yang bervariasi
 CI juga memiliki komunitas yang besar sehingga ada
banyak forum yang siap membantu ketika anda
merasa kesulitan dalam menggunakan CI
22 November 2015 http://aryadharmaadi.com 6
Versi Framework CI
 Framework CI dibangun oleh EllisLab
 EllisLab masih terus menyempurnakan Framework CI,
baik dari segi keamanan (security), penanganan error
atau bug, dan penambahan fitur-fitur
 Saat ini framework CI sudah berada pada versi 3.0.3
dan biasanya setiap bulan diperbaharui dengan me-
release versi terbaru
 Framework CI bisa didownload secara gratis di situs
resminya http://codeigniter.com
22 November 2015 http://aryadharmaadi.com 7
Fitur Utama Framework CI
 Model-View-Controller Based System
 Query Builder Database Support
 Form and Data Validation
 Security and XSS Filtering
 Session Management
 Email Sending Class. Supports Attachments,
HTML/Text email, multiple protocols (sendmail,
SMTP, and Mail)
 Image Manipulation Library (cropping, resizing,
rotating, etc.)
22 November 2015 http://aryadharmaadi.com 8
Fitur Utama Framework CI (2)
 File Uploading Class
 FTP Class
 Localization
 Pagination Data
 Encryption
 Search-engine Friendly
 URLs Flexible
 URI Routing
 Large library of “helper” functions
22 November 2015 http://aryadharmaadi.com 9
Konsep MVC
 Framework CI menggunakan metode pengembangan
berbasis MVC (Model-View-Controller) sehingga
developer wajib memahami konsep MVC sebelum
menggunakan Framework CI
 Konsep MVC adalah konsep pemisahan antara logik
dari aplikasi (Controller) dengan tampilan aplikasi
(View) dan database aplikasi (Model).
22 November 2015 http://aryadharmaadi.com 10
Konsep MVC (2)
 Umumnya, bagian Model dikerjakan oleh programmer
sekaligus database analyst, dimana code-code di
bagian ini merupakan code struktur data yang berisi
koneksi dan fungsi di dalam pengolahan database
 Sedangkan View dikerjakan oleh designer html, css,
dan js karena code-code di bagian ini untuk
menampilkan tampilan web yang menarik dan
interaktif
 Terakhir, Controller dikerjakan oleh programmer inti
PHP karena menangani hubungan Model dengan
View, algoritma, logic, HttpRequest, dll.
22 November 2015 http://aryadharmaadi.com 11
Arsitektur MVC pada CI
22 November 2015 http://aryadharmaadi.com 12
BROWSER
CONTROLLER
MODEL VIEW
MySQL
WEB SERVER
URL, Data
URL, Data HTML, CSS, JS
HTML, CSS, JS
HTML, CSS, JS
Rows Data
Rows Data
Data
Struktur Direktori CI
22 November 2015 http://aryadharmaadi.com 13
Flowchart Framework CI
22 November 2015 http://aryadharmaadi.com 14
Memulai Menggunakan CI
1. Konfigurasi Framework CI
2. Buat Library (jika membutuhkan library tambahan)
3. Persiapkan Model
4. Persiapkan Controller
5. Persiapkan View
22 November 2015 http://aryadharmaadi.com 15
Konfigurasi CI
1. Buka folder config
2. Buka file config.php
3. Isilah
$config['encryption_key']
4. Buka file database.php
5. Isilah hostname, username,
password, database
6. Buka file route.php
7. Tentukan
$route['default_controller']
22 November 2015 http://aryadharmaadi.com 16
Buat Library
 Jika anda ingin membuat sebuah library, silahkan buka
folder ‘libraries’
 Namun, saat ini penulisan library baru belum
dibutuhkan
22 November 2015 http://aryadharmaadi.com 17
Persiapkan Model
 Buka folder ‘Models’ di folder ‘application’
 Buat file baru, misal ‘user_model.php’
 Buka file tersebut dan deklarasi kelas dengan nama
yang sama dengan nama file tersebut
 Kelas yang baru dideklarasikan wajib menurunkan
kelas ‘CI_model’
22 November 2015 http://aryadharmaadi.com 18
Contoh Model
22 November 2015 http://aryadharmaadi.com 19
Contoh Model (2)
22 November 2015 http://aryadharmaadi.com 20
Persiapkan Controller
 Buka folder ‘Controllers’ di folder ‘application’
 Buat file baru, misal ‘user.php’
 Buka file tersebut dan deklarasi kelas dengan nama
yang sama dengan nama file tersebut
 Kelas yang baru dideklarasikan wajib menurunkan
kelas ‘CI_Controller’
22 November 2015 http://aryadharmaadi.com 21
Contoh Controller
22 November 2015 http://aryadharmaadi.com 22
Contoh Controller (2)
22 November 2015 http://aryadharmaadi.com 23
Persiapkan View
 Buka folder ‘Views’ di folder ‘application’
 Buat file baru dengan nama misalnya ‘home.php’
 Isilah file tersebut dengan script-script html biasa
untuk menampilkan halaman web
22 November 2015 http://aryadharmaadi.com 24
Contoh View
22 November 2015 http://aryadharmaadi.com 25
Pemanggilan Fungsi
 Pemanggilan fungsi yang sudah dibuat pada class
Controller bisa dipanggil melalui url dengan format:
host/index.php/class_name/function_name/data
Contoh:
http://locahost/codeigniter/index.php/user/index
22 November 2015 http://aryadharmaadi.com 26
Penutup
 Selain ringan dan cepat, CodeIgniter memiliki
dokumentasi yang super lengkap disertai dengan
contoh implementasi kodenya, sehingga hal ini
menjadi salah satu alasan kuat mengapa banyak orang
memilih CodeIgniter sebagai framework pilihannya
 Slide materi di sini hanya membahas tahap dasar
penggunaan CodeIgniter. Untuk pemanfaatan fitur-
fitur unggulan CodeIgniter yang lainnya akan dibahas
di slide yang lain.
22 November 2015 http://aryadharmaadi.com 27
Next . . .
 Web Service dan XML
22 November 2015 http://aryadharmaadi.com 28
Referensi
 http://codeigniter.com
 https://ellislab.com/codeigniter
22 November 2015 http://aryadharmaadi.com 29

Pengenalan Framework CodeIgniter

  • 1.
    I Putu AryaDharmaadi, S.T., M.T. Dosen Jurusan Teknologi Informasi Universitas Udayana http://aryadharmaadi.com
  • 2.
    22 November 2015http://aryadharmaadi.com 2
  • 3.
    Apa itu Framework? Framework merupakan sebuah KERANGKA KERJA yang MEMUDAHKAN PENGEMBANG aplikasi untuk membangun software sesuai dengan bahasa pemrograman tertentu.  Framework untuk bahasa pemrograman PHP umumnya terdiri dari SEKUMPULAN FOLDER yang berisi file-file PHP, dimana file-file tersebut merupakan CLASS LIBRARY, HELPER, PLUGIN, atau KONFIGURASI lainnya. 22 November 2015 http://aryadharmaadi.com 3
  • 4.
    Mengapa Menggunakan Framework?  Pembuatanaplikasi dengan memanfaatkan framework akan sangat membantu dari segi KECEPATAN PENGEMBANGAN dan efisiensi source code aplikasi  Hal tersebut disebabkan karena  pengembang tinggal mengikuti alur framework,  pengembang bisa memanfaatkan library dari framework untuk perintah-perintah umum, seperti CRUD (Create Read Update Delete) data, session, dll.  setiap project yang dibuat akan memiliki alur yang sama persis, sehingga saat pembuatan project berikutnya bisa meng-copy project sebelumnya, lalu sedikit dimodifikasi 22 November 2015 http://aryadharmaadi.com 4
  • 5.
    Beda Framework denganCMS  Framework berbeda jika dibandingkan dengan CMS (Content Management System), walaupun sama-sama mempermudah pembuatan web.  Pada CMS (misalnya wordpress), pengembang tidak perlu menuliskan code program PHP karena semuanya sudah jadi, tinggal mengatur konten dan tampilannya saja  Sedangkan Framework, pengembang harus menuliskan code program PHP sesuai dengan ruang lingkup yang diatur oleh framework 22 November 2015 http://aryadharmaadi.com 5
  • 6.
    Framework CI  CodeIgniter(CI) merupakan framework PHP yang tangguh dan sangat mudah dipelajari sehingga diperuntukkan kepada developer PHP yang ingin membangun aplikasi web yang full-featured dengan mudah dan elegan.  CI hadir dengan dokumentasi yang lengkap dan menyediakan contoh-contoh koding yang bervariasi  CI juga memiliki komunitas yang besar sehingga ada banyak forum yang siap membantu ketika anda merasa kesulitan dalam menggunakan CI 22 November 2015 http://aryadharmaadi.com 6
  • 7.
    Versi Framework CI Framework CI dibangun oleh EllisLab  EllisLab masih terus menyempurnakan Framework CI, baik dari segi keamanan (security), penanganan error atau bug, dan penambahan fitur-fitur  Saat ini framework CI sudah berada pada versi 3.0.3 dan biasanya setiap bulan diperbaharui dengan me- release versi terbaru  Framework CI bisa didownload secara gratis di situs resminya http://codeigniter.com 22 November 2015 http://aryadharmaadi.com 7
  • 8.
    Fitur Utama FrameworkCI  Model-View-Controller Based System  Query Builder Database Support  Form and Data Validation  Security and XSS Filtering  Session Management  Email Sending Class. Supports Attachments, HTML/Text email, multiple protocols (sendmail, SMTP, and Mail)  Image Manipulation Library (cropping, resizing, rotating, etc.) 22 November 2015 http://aryadharmaadi.com 8
  • 9.
    Fitur Utama FrameworkCI (2)  File Uploading Class  FTP Class  Localization  Pagination Data  Encryption  Search-engine Friendly  URLs Flexible  URI Routing  Large library of “helper” functions 22 November 2015 http://aryadharmaadi.com 9
  • 10.
    Konsep MVC  FrameworkCI menggunakan metode pengembangan berbasis MVC (Model-View-Controller) sehingga developer wajib memahami konsep MVC sebelum menggunakan Framework CI  Konsep MVC adalah konsep pemisahan antara logik dari aplikasi (Controller) dengan tampilan aplikasi (View) dan database aplikasi (Model). 22 November 2015 http://aryadharmaadi.com 10
  • 11.
    Konsep MVC (2) Umumnya, bagian Model dikerjakan oleh programmer sekaligus database analyst, dimana code-code di bagian ini merupakan code struktur data yang berisi koneksi dan fungsi di dalam pengolahan database  Sedangkan View dikerjakan oleh designer html, css, dan js karena code-code di bagian ini untuk menampilkan tampilan web yang menarik dan interaktif  Terakhir, Controller dikerjakan oleh programmer inti PHP karena menangani hubungan Model dengan View, algoritma, logic, HttpRequest, dll. 22 November 2015 http://aryadharmaadi.com 11
  • 12.
    Arsitektur MVC padaCI 22 November 2015 http://aryadharmaadi.com 12 BROWSER CONTROLLER MODEL VIEW MySQL WEB SERVER URL, Data URL, Data HTML, CSS, JS HTML, CSS, JS HTML, CSS, JS Rows Data Rows Data Data
  • 13.
    Struktur Direktori CI 22November 2015 http://aryadharmaadi.com 13
  • 14.
    Flowchart Framework CI 22November 2015 http://aryadharmaadi.com 14
  • 15.
    Memulai Menggunakan CI 1.Konfigurasi Framework CI 2. Buat Library (jika membutuhkan library tambahan) 3. Persiapkan Model 4. Persiapkan Controller 5. Persiapkan View 22 November 2015 http://aryadharmaadi.com 15
  • 16.
    Konfigurasi CI 1. Bukafolder config 2. Buka file config.php 3. Isilah $config['encryption_key'] 4. Buka file database.php 5. Isilah hostname, username, password, database 6. Buka file route.php 7. Tentukan $route['default_controller'] 22 November 2015 http://aryadharmaadi.com 16
  • 17.
    Buat Library  Jikaanda ingin membuat sebuah library, silahkan buka folder ‘libraries’  Namun, saat ini penulisan library baru belum dibutuhkan 22 November 2015 http://aryadharmaadi.com 17
  • 18.
    Persiapkan Model  Bukafolder ‘Models’ di folder ‘application’  Buat file baru, misal ‘user_model.php’  Buka file tersebut dan deklarasi kelas dengan nama yang sama dengan nama file tersebut  Kelas yang baru dideklarasikan wajib menurunkan kelas ‘CI_model’ 22 November 2015 http://aryadharmaadi.com 18
  • 19.
    Contoh Model 22 November2015 http://aryadharmaadi.com 19
  • 20.
    Contoh Model (2) 22November 2015 http://aryadharmaadi.com 20
  • 21.
    Persiapkan Controller  Bukafolder ‘Controllers’ di folder ‘application’  Buat file baru, misal ‘user.php’  Buka file tersebut dan deklarasi kelas dengan nama yang sama dengan nama file tersebut  Kelas yang baru dideklarasikan wajib menurunkan kelas ‘CI_Controller’ 22 November 2015 http://aryadharmaadi.com 21
  • 22.
    Contoh Controller 22 November2015 http://aryadharmaadi.com 22
  • 23.
    Contoh Controller (2) 22November 2015 http://aryadharmaadi.com 23
  • 24.
    Persiapkan View  Bukafolder ‘Views’ di folder ‘application’  Buat file baru dengan nama misalnya ‘home.php’  Isilah file tersebut dengan script-script html biasa untuk menampilkan halaman web 22 November 2015 http://aryadharmaadi.com 24
  • 25.
    Contoh View 22 November2015 http://aryadharmaadi.com 25
  • 26.
    Pemanggilan Fungsi  Pemanggilanfungsi yang sudah dibuat pada class Controller bisa dipanggil melalui url dengan format: host/index.php/class_name/function_name/data Contoh: http://locahost/codeigniter/index.php/user/index 22 November 2015 http://aryadharmaadi.com 26
  • 27.
    Penutup  Selain ringandan cepat, CodeIgniter memiliki dokumentasi yang super lengkap disertai dengan contoh implementasi kodenya, sehingga hal ini menjadi salah satu alasan kuat mengapa banyak orang memilih CodeIgniter sebagai framework pilihannya  Slide materi di sini hanya membahas tahap dasar penggunaan CodeIgniter. Untuk pemanfaatan fitur- fitur unggulan CodeIgniter yang lainnya akan dibahas di slide yang lain. 22 November 2015 http://aryadharmaadi.com 27
  • 28.
    Next . ..  Web Service dan XML 22 November 2015 http://aryadharmaadi.com 28
  • 29.