Kaskus

Tech

4d3nk3j4w3nAvatar border
TS
4d3nk3j4w3n
Kosep Modular menggunakan DAO di CodeIgniter
Salam 'alaikum buat agan2 Kaskuser semua...maaf kalo salah room emoticon-Ngakak

Ok langsung aja lah lagian ga mungkin lah salah room, kalo masih salah juga paling agan anan_purple langsung nongol dimana emoticon-Peace

Berawal dari sebuah gagasan untuk mengembangkan aplikasi lebih modular dan terstruktur dengan tetap memakai kaidah MVC dan menggabungkannya dengan Style Coding Java yang pernah ane pelajari (yang jauh lebih robust) maka ane pun akhirnya tanya2nya sama Master CodeIgniter tentang DAO dan teknik Loading Resource di CodeIgniter.

Setelah hampir seharian berdiskusi tentang konsep ini, dan diakhiri dengan Ujicoba konsep secara sederhana maka ane berani nulis disini.

Mungkin agan bertanya2 apa keuntungan dari menggunakan konsep ini dibandingkan dengan konsep di CodeIgniter yang sudah ada? Berikut keuntungan yang didapat dilihat dari "katamata" ane gan emoticon-Peace

Code:

=> Program lebih terstruktur dan lebih mudah dimaintenance
=> Mengurangi komplexitas controller
=> Mengurangi PENDEKLARASIAN ULANG CODE
=> HANYA CUKUP MEMERLUKAN 1 MODEL UNTUK SEMUA TRANSAKSI DATABASE
=> Code lebih robust
=> dll yang jelas banyak banget deh emoticon-Big Grin


Mungkin agan akan bertanya bagaimana bisa dengan 1 model bisa menangani seluruh transaksi database?

Jawaban ane :

Kita memakai memakai Library sebagai jembatan antara Controller, Model dan Main Code dalam hal ini adalah modul yang kita panggil. Arsitektur dan Alur Kerjanya adalah sebagai berikut

Code:

Controller => Load Modul Library => Modul Class

l l
\/
Model


Cara Kerja :

- Klien melakukan request kemudian ditangkap oleh Controller dengan memanggil function sesuai dengan request klien.

- Ketika proses instansiasi kelas Controller terjadi, Controller akan memanggil library modul sesuai kebutuhan

- Library mengeload Global Model (Model) dan Modul Class yang kemudian berinteraksi berdasarkan function Controller yang dipanggil.

- Dalam "tubuh" class Model, terdapat paramater tabel yang berfungsi untuk membuat MODEL MENJADI GLOBAL DAN DAPAT DIPAKAI OLEH CLASS MANAPUN YANG MEMANGGILNYA.

Nah dengan style yang demikian, maka kita dapat menerapkan kosep DAO (Data Access Object) dengan mudah dan kita akan mengurangi kompleksitas dalam Controller. Sehingga Controller tidak lagi berperan sebagai Core Logic tapi hanya sebagai VALIDATOR INPUTAN DAN JEMBATAN PENGHUBUNG ANTARA REQUEST CLIENT DAN CORE LOGIC (Library).

Bagaimana mau mencoba konsep yang ane share ini? atau malah emoticon-Bingung

YM : surya.aden_jawen

Update : Konsep ini Pure OOP sehingga sangat cocok untuk Coder yang berjiwa OOP emoticon-Peace

InsyAllah kalo kagak males ntar ane akan bahas Constraint Programming di CodeIgniter + (Semoga saja sudah fixed) Library Constraint Programmingnya emoticon-Big Grinane udah make konsep ini tapi belum bikin Librarynya untuk Global cuma bisa dipake sendiri makanya ingin bikin yang bisa dipake Global emoticon-Kiss

emoticon-Toast
0
2.9K
19
GuestAvatar border
Komentar yang asik ya
Urutan
Terbaru
Terlama
GuestAvatar border
Komentar yang asik ya
Komunitas Pilihan