Chilik, satu (lagi?) MVC Framework lokal

Pencarian ini bermula dari keperluan saya untuk membuat mock-up template dari sebuah web aplikasi toko online. Untuk fully-worked website, saya biasanya mengandalkan CodeIgniter, lebih lengkap semua fitur-nya. But, sekali lagi, ini khan hanya mock-up template? (buat yang masih asing dengan istilah mock-up, adalah seperti prototipe/purwarupa dari satu hal).

Butuh cepat pembuatannya dan ringan, sekaligus tidak murahan. Itu pertama yang ada di pikiran saya. Googling punya Google ternyata berujung membawa saya ke satu site, KissMVC. Pembuatnya, Erik Koh (sepertinya anak Singapura – cuma nebak), menawarkan satu PHP MVC framework style yang enteng. Hmm, cocok!

Saya ikuti pembahasan di dokumentasinya, tweaking, dan yap, berhasil jalan. So, saya begitu senang ternyata masalah saya terpecahkan, sebuah live mock-up template di server localhost. Sampai saya membuat direktori di folder controller-nya dan, celaka, tidak terdeteksi. Oalah, ternyata controller dari core-nya hanya menggunakan routing:

<controller>/<action>/<parameter>.

Dan jika saya menggunakan cara routing seperti ini:

<directory1>/.../<controller>/<action>/<parameter>,

hanya membuat saya mematahkan rule routing-nya dan membuat bootstrap-nya tidak membaca. Satu lagi yang paling menganggu saya, semua controller-nya harus dimulai dengan awalan function _index(), padahal biasanya function index(). Dan satu hal lagi, ternyata view-nya tidak memisahkan business logic dan presentation, jadi spaghetti code campuran syntax html, css, php. So, ini memaksa saya berpikir ulang, dan mendapatkan ide, apa susahnya kalau saya bikin sendiri?

Ternyata susah, euy!

Banyak hambatan dan tantangan yang saya temui selama memikirkan dan mematangkan konsep dan implementasi MVC Framework yang ringan ini. Ternyata parsing routing ini termasuk faktor yang mempengaruhi begitu banyaknya MVC framework yang muncul. Pendekatan masing-masing ternyata berbeda satu sama lain. kode Controller dari Kiss saya rombak total. View-nya saya ubah total, bahkan saya membuat versi JSON-output ataupun Smarty-output. Not bad-lah buat pemula penulis framework! Untuk kode Model-nya, absolutely cocok untuk keperluan saya. saya memakainya.

so, jadilah Chilik framework, sebuah rangka PHP dengan pendekatan Model-View-Controller lokal (pertama?) yang dibuat saya. Dan saya puas dengan hasil-nya 🙂.

 
Tertarik dengan Chilik MVC Framework, anda dapat mengunduh link ini karena saya membuka source-nya dan dibawah lisensi GNU GPL. 3. Silahkan anda merubahnya dan memberikan pendapat untuk pengembangannya.

Catatan:

selain kekurangan, tak elok-lah jika saya tidak mencantumkan kelebihannya.

Mudah

  • Hanya menggunakan 1 file inti, terdiri dari 3 class fungsi MVC (Kissmvc_core.php) .

Kecil

  • (maka saya menggunakan kata cilik untuk framework saya) File Inti hanya sebesar 12KB jika dikompres, atau 3.5KB jika dikompres.

Minimalis

  • Hanya fungsi esensial yang di-dukung

Kokoh

  • Inti kode sangat kecil dan mudah untuk diaudit dan diamankan dengan cepat
  • proteksi injeksi SQL karena menggunakan PDO (paling tanpa cacat menurut saya kode Modelnya).

Tidak mengikat

  • Tidak ada batasan untuk menggunakan library lain seperti PEAR dan Object Relational Mapping.
  • Semua parameter global PHP dapat diakses.

Fleksibel

  • Abstraksi PDO memudahkan pilihan macam macam database (mendukung MySQL, PostgreSql, dan SQlite).
  • Kode Inti MVC dapat ditambahkan dan diturnkan dengan mudah menggunakan Inheritance dalam Pemrograman berorientasi objek.
  • Pilihan untuk menggunakan prosedural atau pendekatan OOP, atau keduanya!

Cepat

  • Tidak ada fitur, kode atau framework yang memberatkan.
  • Bahkan lebih cepat jika digunakan semacam PHP Accellerator seperti APC.

Gratis

  • Open-source, dan piranti lunak bebas yang dirilis dibawah lisensi MIT.
  • Anda bebas melakukan apapun pada kodenya selama tidak menghapus tulisan lisensi di kodenya.

Iklan

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

%d blogger menyukai ini: