Belajar Codeigniter – Arsitektur Dan Struktur Direktori Codeigniter 3

Mintailmu.com – Arsitektur Codeigniter 3 – Nah setelah kita memahami tentang codeigniter kita akan belajar yaitu Arsitektur Dan Struktur Direktori Codeigniter 3.

Dalam Belajar codeigniter memiliki arsitektur yang harus di pahami yaitu sebagai gambar berikut ini :

  1. Seperti terlihat pada gambar di atas bahwa setiap ada request menuju Codeigniter, selalu ditampung dan diarahkan ke arah file index.php
  2. Tahap berikutnya, Routing akan menentukan apakah akan melanjutkan request ke tahap 3 untuk proses caching ataukah ke tahap 4 untuk dilakukan pengecekan keamanan.
  3. Jika halaman yang di request telah ada dalam Caching, maka Routing akan melewatkan request ke tahap 3 dan mengembalikan respon dari caching ke user.
  4. Namun jika halaman yang di request tidak terdapat dalam Caching, maka Routing akan melewatkan request ke tahap 4 untuk dilakukan pengecekan Security.
  5. Sebelum melewatkan request ke Application Controller, fitur Security akan melakukan pengecekan pada data yang disubmit oleh user. Setelah dilakukan pengecekan, Application Controller me-load Model, Library, Helper, Plugin, dan Script untuk kemudian dilewatkan ke View.
  6. View akan melakukan render pada halaman yang di request dan menyimpannya dalam Caching, dan karena halaman yang di request tidak terdapat dalam caching sebelumnya, maka kali ini halaman ini akan di simpan dalam Caching agar permintaan pada halaman yang sama kedepannya dapat dilakukan dengan lebih cepat

Struktur Direktori Pada Codeigniter 3

Berikut ini merupakan struktur folder dari framework Codeigniter, dimana folder utamanya terdapat 3, yaitu Application, System, dan User_guide_src : dan folder tests biarkan saja.

Folder Application

Didalam FOLDER APPLICATION Seperti namanya, maka folder ini merupakan folder aplikasi yang akan kita kembangkan. Di dalam folder inilah project kita akan dibuat. Folder ini berisi beberapa folder lain, yang akan dijelaskan sebagai berikut:

  • Cache: folder ini berisi semua halaman yang telah di cache dalam aplikasi kita. Halaman yang telah di cache inilah yang nantinya 9 dapat mempercepat akses pada halaman-halaman yang sering di akses.
  • Config: folder ini berisi berbagai file yang berisi konfigurasi aplikasi kita. Dengan bantuan file config.php, kita dapat mengkonfigurasi aplikasi kita. Sedangkan untuk mengkonfigurasi koneksi database, kita dapat menggunakan file database.php.
  • Controller: folder ini berisi file-file controller dari aplikasi kita, dan ini merupakan bagian paling dasar dari aplikasi yang kita kembangkan. 
  • Core: folder ini berisi Class-Class utama aplikasi kita
  • Helpers: folder ini berisi Class-Class buatan kita yang merupakan penambahan fungsi dari Class helper yang sudah ada dan dapat membantu pengembangan aplikasi.
  • Hooks: file-file dalam folder ini dimaksudkan untuk melakukan perubahan cara kerja dalam system core codeigniter.
  • Language: berisi file-file yang berhubungan dengan Bahasa.
  • Libraries: folder ini berisi Class-Class buatan kita yang dapat membantu aplikasi kita.
  • Logs: merupakan folder yang berisi file-file yang berhubungan dengan log dari system codeigniter.
  • Models: database method akan diletakkan dalam folder ini.
  • Third_party: dalam folder ini kita dapat meletakkan plugin dari berbagai sumber untuk digunakan dalam aplikasi kita, misalnya plugin phpexcel, tinyMCE, dan lain sebagainya.
  • Views: folder tempat kita meletakkan file-file HTML kita.

Folder System

Di dalam FOLDER SYSTEM Di dalam folder system ini terdapat kode-kode, library, helper, dan filefile lainnya, yang merupakan core dari framework codeigniter. Library dan helper inilah yang di load dan digunakan dalam aplikasi kita, sehingga proses pengembangan aplikasi menjadi lebih mudah. Isi dari folder system adalah sebagai berikut:

  • Core: folder ini berisi kode-kode core framework Codeigniter. Jangan mengubah apapun yang ada dalam folder ini. Semua yang anda lakukan berada dalam folder application. Bahkan jika anda bermaksud untuk menambah fungsi dalam core Codeigniter, yang perlu anda lakukan adalah menggunakan fitur hooks, dan folder hooks terletak dalam folder application.
  • Database: folder database berisi driver-diver database dan file-file pendukung database.
  • Fonts: berisi file-file yang berhubungan dengan font.
  • Helpers: folder ini berisi class-class helper standart Codeigniter (misalnya date, cookie, dan URL helper). Language: dalam folder ini berisi file-file bahasa.
  • Language: dalam folder ini berisi file-file bahasa.
  • Libraries: berisi library standart yang digunakan dalam framework Codeigniter untuk membantu anda mempercepat proses pengembangan aplikasi yang berhubungan dengan email, calender, upload file, dan masih banyak lagi. Anda juga dapat membuat sendiri library anda atau melakukan extend, atau bahkan melakukan overwrite atau mengganti library standart, tetapi class tersebut harus diletakkan dalam folder application/libraries agar terpisah dengan library standart Codeigniter. Hal ini penting dilakukan agar proses upgrade maupun update system pada core framework Codeigniter dapat dengan mudah dilakukan.

Folder User_guide_src

Didalam Folder USER_GUIDE_SRC Folder ini, sesuai dengan namanya, dapat kita tebak jika berisi file-file dokumentasi dari framework Codeigniter. File-file ini bersifat offline, sehingga dapat membantu kita mempelajari fungsi-fungsi yang terdapat pada berbagai macam library, helper, dan class-class. Sangat disarankan jika anda membaca petunjuk penggunaannya agar dapat dengan mudah melakukan pengembangan aplikasi dikemudian hari. 11 Selain ketiga folder diatas, terdapat file “index.php”. Dalam file ini, kita dapat melakukan konfigurasi lingkungan pengembangan kita, error level yang ditampilkan jika terjadi kesalahan, dan kita juga dapat mendefinisikan nama dari folder application dan system. Namun, sangat disarankan untuk tidak melakukan perubahan apapun dalam file index.php ini jika anda merasa pengetahuan anda belum mencukupi.

Daftar Isi :

1. Belajar Codeigniter – Pengenalan Codeigniter
2. Belajar Codeigniter – Persiapan Sofware Yang Digunakan
3. Belajar Codeigniter – Instalasi Codeigniter
4. Belajar Codeigniter – Arsitektur Codeigniter
5. Belajar Codeigniter – Mengenal MVC Pada Codeigniter
6. Belajar Codeigniter – Konfigurasi Database Pada Codeigniter
7. Tutorial Codeigniter 3 – Membuat CRUD (Coming Soon)
8. Tutorial Codeigniter 3 – Membuat FORM Registrasi Dan Login (Coming Soon)
9. Tutorial Codeigniter 3 – Membuat Form Upload Foto,File Dll (Coming Soon)
10. Tutorial Codeigniter 3 – HMVC (Coming Soon)
11. (Cooming Soon)