Konsep Dasar & Struktur CodeIgniter 4
Daftar Isi
- Struktur Direktori Codeigniter 4
- Mengenal Konsep MVC Codeigniter 4
- Download Materi Power Point
- Referensi
Struktur Direktori Codeigniter 4
Jika kamu baru pertama kali belajar Codeigniter, maka wajib hukumnya mengetahui apa saja isi direktori dan file yang ada di dalam project codeigniter.
Folder CI 4
Github : folder ini kita butuhkan untuk konfigurasi repo github, seperti konfigurasi untuk build dengan github action
App : folder ini akan berisi kode dari aplikasi yang kita kembangkan
Public : folder ini berisi file yang bisa diakses oleh publik, seperti file index.php, robots.txt, favicon.ico, ads.txt, dll
Tests : folder ini berisi kode untuk melakukan testing dengan PHPunit
Vendor : folder ini berisi library yang dibutuhkan oleh aplikasi, isinya juga termasuk kode core dari system CI.
Writable :folder ini berisi file yang ditulis oleh aplikasi. Nantinya, kita bisa pakai untuk menyimpan file yang di-upload, logs, session, dll.
file-file yang ada di direktori CI 4.
- .env adalah file yang berisi variabel environment yang dibutuhkan oleh aplikasi.
- .gitignore adalah file yang berisi daftar nama file dan folder yang akan diabaikan oleh Git.
- ⚙️ build adalah script untuk mengubah versi codeigniter yang digunakan. Ada versi release (stabil) dan development (labil).
- json adalah file JSON yang berisi informasi tentang proyek dan daftar library yang dibutuhkannya. File ini digunakan oleh Composer sebagai acuan.
- lock adalah file yang berisi informasi versi dari libraray yang digunakan aplikasi.
- ©️ txt adalah file yang berisi penjelasan tentang lisensi Codeigniter;
- .xml.dist adalah file XML yang berisi konfigurasi untuk PHPunit.
- .md adalah file keterangan tentang codebase CI. Ini biasanya akan dibutuhkan pada repo github atau gitlab.
- ⚙️ spark adalah program atau script yang berfungsi untuk menjalankan server, generate kode, dll.
Kemudian, coba kita fokus ke folder ???? app, di sana ada beberapa folder dan file yang perlu kita ketahui.
- .Config adalah folder yang berisi konfigurasi untuk aplikasi;
- .Controllers adalah folder yang berisi kode Controller dari aplikasi;
- Database adalah folder yang berisi kode untuk migrasi database;
- Filters adalah folder yang berisi kode untuk filter atau middleware;
- Helpers adalah folder yang berisi kode untuk fungsi-fungsi helper;
- Language adalah folder yang berisi kamus bahasa untuk aplikasi;
- Libraries adalah folder yang berisi library tambahan untuk aplikasi;
- Models adalah folder yang berisi kode untuk model;
- ThridParty adalah folder yang berisi library dari pihak ketiga;
- Views adalah folder yang berisi kode untuk view;
- .htaccess adalah file yang berisi konfigurasi akses untuk web server;
- php adalah file yang berisi definisi fungsi untuk menindih fungsi core dari CI.
- index.html adalah file placeholder untuk mencegah direct access
Mengenal Konsep MVC Codeigniter 4
Codeigniter sejak awal menganut konsep MVC. Karena itu, ia begitu terkenal. Soalnya, implementasi MVC di CI mudah dipahami MVC adalah singkatan dari Model–View–Controller. MVC merupakan sebuah pola desain arsitektur yang umum digunakan dalam pengembangan aplikasi. MVC ini adalah pola penulisan kode yang umum dipakai.. dimana kode untuk Model di taruh dalam folder yang sama, begitu juga dengan kode untuk View dan Controller.
Apa itu Model?
Model adalah kode yang bertugas untuk membuat pemodelan data. Kadang juga dipakai untuk pemodelan bisnis.Model bisa mengakses data dari Database dan juga sumber lainnya. Intinya: Kalau berkaitan tentang data, itu tugasnya model.
Apa itu View?
View adalah kode yang bertugas untuk membuat tampilan aplikasi. Ingat: Fokusnya untuk membuat tampilan aplikasi, bukan yang lain. Kita tidak boleh query data dari view, meskipun itu bisa dilakukan. Kadang juga kita akan membuat sedikit logika di dalam view, seperti logika untuk menampilkan dan menghilangkan elemen tertentu
Apa itu Controller?
Controller bertugas menyatukan Model dan View. Jadi, setiap ada request Controller akan bertanggung jawab untuk membalas request tersebut.Jika itu request untuk menyimpan data ke database, maka Controller harus memanggil Model yang bertanggung jawab untuk data tersebut. Lalu meminta model untuk menyimpannya ke database.Jika itu request untuk view data, maka Controller akan mencari kode View yang bertanggung jawab untuk menampilkan data tersebut.Kadang juga Controller akan membutuhkan beberapa library dan helper untuk memproses request.
Download Materi Power Point
https://drive.google.com/drive/folders/1BeTljsiRTI_jy0LpOsTBuWiXpbaEgjWN?usp=drive_link
Referensi
https://www.petanikode.com/codeigniter4-mvc/