Skip to content

Kesan Pertama Mencoba Framework PHP Kohana : Agak aneh dibanding CodeIgniter ?

16 August 2008
tags:

Tadi malam saya mencoba install kohana. Pengen coba aja sih, siapa tahu fork dari CodeIgniter ini memang lebih baik dibanding CodeIgniternya sendiri.
Tergoda melihat hasil comparasinya ? Memang bener seperti ada 3 jenis session juga lemparan variabel yang tidak dibatasi hanya menggunakan $POST seperti di CI. Juga karena kohana ini merupakan community driven. Developmentnya tidak dikendalikan oleh company seperti CI. Mungkin bug fix dan penambahan fitur jadi lebih cepet. Ah, relative juga ya hehehe.

Sedikit share saja, ini hanyalah kesan awal saya. Mungkin bisa berubah jika lebih mendalaminya nanti.

1. Installasi
Proses installasi hanya cukup 2 step saja. Extract file zip kohana lalu edit file config di folder application/config.
Config base url antara CI dan Kohana Berbeda.
CI : $config['base_url'] = "http://localhost/ci/";
Kohana : $config['site_domain'] = 'localhost/kohana/';

Selanjutnya, tinggal buka browser dan ketik url http://localhost/kohana/ untuk membuka welcome page.
Welcome page nya tampak ngejreng. I love the green color😀

Jika config site_domain diganti full url (menggunakan http://localhost/kohana) maka link di halaman welcome “This is the default Kohana index page. You may also access this page as welcome/index.” jadinya malah double menjadi http://http//localhost/kohana/index.php/welcome/index. Dan logo kohana juga jadi hilang karena site urlnya juga salah.

Setelah dilihat, ternyata link pada view welcome tsb jadi double karena link dibuat dengan memanggil fungsi static dari helper html dimana returnnya sudah berisi anchor “http://”. Pantas aja jadi double😛

2. Proteksi eksekusi file
Dibaris awal file script pada CI menggunakan :
if ( ! defined(‘BASEPATH’)) exit(‘No direct script access allowed’);
kalau dikohana
defined(‘SYSPATH’) or die(‘No direct script access.’);

Tampak lebih enak dibaca baris punya CI ya. Agak terasa aneh pas baca yang kohana.

3. User Guide
Kohana tidak menyertakan user guide atau dokumentasi pada installernya. Berbeda dengan CI ketika proses installasi selesai, kita dapat langsung mengikuti panduan menggunakan CI. Ini sangat membantu. Bisa dikatakan pertama saya belajar CI 80% sumbernya nya dari user guide ini😀.

4. Struktur Folder
Kohana dan CI hampir sama secara struktur folder. Kecuali untuk internasionalisasi, yaitu folder language, di kohana bernama i18n.
Folder Scaffolding dikohana juga tidak ada. Apakah kohana tidak support scaffold ? Harus baca dulu dokumentasinya nih. Nevermind, saya sendiri tidak pernah pake scaffold di CI juga. Lebih seneng bikin CRUD sendiri😀

5. Example
File example ini sedikit mengobati kehampaan user guide di installer kohana. Jadi saya bisa explore nanti struktur kodenya dari example ini.

Hey ternyata udah ada captcha😀. It’s nice.

Just open up your browser dan ketik http://localhost/kohana/?/examples/

? (tanda tanya) pada url tersebut untuk mengganti tulisan index.php. So bisa juga ditulis http://localhost/kohana/index.php/examples/

6. New..new dan new. Object ?
Buka kode untuk controller welcome ternyata banyak berbeda denga CI. Kalau di CI untuk memanggil view tinggal $this->load-view(“namaview”);
di kohana harus diperlakukan sebagai object. Lihat commentnya berikut :
// In Kohana, all views are loaded and treated as objects.
$this->template->content = new View(‘welcome_content’);
Mungkin pada saat load model juga sama ya ?

7. Error Page 404
Kohana akan memunculkan error page not found dengan Stack Tracenya yang tampaknya tidak disimpan dalam sebuah file error seperti di CI menggunakan file error_404.php di folder application/errors. Atau mungkin disimpan difile. Nanti diexplore lagi.

Tapi dicontroller teryata ada function __call. Saya pertama liat bingung buat apa, seperti constructor atau fungsi yang tidak bisa dipanggil dari url untuk routing.

public function __call($method, $arguments)

hoho, ternyata baca dikomentar codenya, bahwa semua halaman yang dirouting ke controller ini dantidak ditemukan (page not found) akan dihandle dalam fungsi __call. Berarti saya bisa customizing display errornya dong, dimana tiap controller bisa beda. Atau tinggal create 1 page seperti di CI dan panggil sebagai global display error not found. Fleksibel juga ya.

Itu saja kesan pertama mencoba kohana. Penasaran juga sih ingin explore lebih dalam. I’m so curious.

Karena sebelumnya mempelajari CI dan sekarang mencoba forknya, jadi comparasinya pasti ke CI terus. Jadi perlu lebih banyak adaptasi nih, dibanding mungkin kalo belajar framework lain, karena mindset nya sudah beda duluan, anggapannya pasti tidak sama. Tapi antara CI dan Kohana ini anggapannya sama, tapi kenyataan banyak yang berbeda juga. Jadi terasa aneh😀

Anda tertarik juga untuk mempelajari kohana ?

Sebagai penutup ada yang tahu komunitas Kohana indonesia gak ya, seperti CI punya😀

19 Comments leave one →
  1. fajar permalink
    22 August 2008 5:24 pm

    bikin milis kohana atau aja mas ..

  2. cevarief permalink
    23 August 2008 12:07 pm

    Sok atuh dimotori sama mas fajar atau bikin cms kohana indonesia😀

  3. 9 October 2008 4:08 pm

    wah keren saya juga baru ngulik2 ci blum sempet bongkar kohana. btw ada tips untuk framework ajax aplikasi terbaik untuk php ga?

  4. cevarief permalink
    13 October 2008 9:27 am

    Mas reeko,

    Saya kalo ajax belum pernah pake ajax framework yang integrated dengan PHP.
    Biasa tancap langsung di halaman javascript aja😀.
    Kalaupun pake, saya pake framework client aja, pake mootools. Di dalamnya kan udah ada AJAXnya, kalo server procesingnya tetep pake php biasa aja.

    Mungkin pake SAJAX ya kalo yang integrate dengan PHPnya. Tapi saya belum sempet ngulik, cuma download terus testing aja.

    Semoga membantu

  5. 3 February 2009 1:34 pm

    kerenn mas tutorial nya😀 sering2 brkunjung nih…

  6. @r13f permalink
    10 February 2009 11:56 pm

    Kohana basisnya CI, bedanya hanya pada aturan main OOP pada PHP 5, Kohana lebih strict dibandingkan CI. Dokumentasi CI luar biasa bagus, hal ini lah yang membuat pecinta CI keranjingan. Benchmark CI juga lebih baik sedikit dibanding kohana.

    Mungkin menurut saya, kohana lebih teratur dalam mengikuti aturan OOP, oleh karena itu lebih ribet dari CI. Namun sekali lagi it tergantung dari jalan pikiran kita.

    Untuk framework php dengan terintegrasi ajax lebih kompleks dari framework php murni. Mungkin lebih baik membuat komponen ajax sendiri kemudian diintegrasikan dengan framework PHP favorite kita. Hal ini sudah sering saya lakukan dalam pekerjaan sehari-hari saya.

    Saat ini mungkin framework yang mantabe abis adalah PHP GWT, dimana semua komponen terintegrasi secara langsung didalam frameworknya. Saya dengan menunggu rilis dari framework ini yang sampai saat ini masih belum juga keluar.

    Salam..

  7. cevarief permalink
    11 February 2009 1:02 pm

    Wah mas @r13f, kok bisa bilang manteb sih, padahal menurut Anda keluar aja belum frameworknya, he. Nyoba dimana tuch.

  8. 4 May 2009 9:52 am

    emang framework itu belum begitu terdengar ditelinga kita,,,,wuh,,?
    mulai belajar ah dari sekarang,,,,thanksya atas infonya..

  9. 4 June 2009 12:33 am

    kohana-id.co.cc

  10. cevarief permalink*
    5 June 2009 5:25 am

    Wew, Pertamax nih. Good initiative !

  11. 24 February 2010 5:04 pm

    tulisan yang menarik .. saya sendiri merasa bingung dengan Kohana .. soalnya udah kebiasaan di scratch php dan CI ..

    salam kenal

  12. cumaliataj permalink
    22 September 2010 10:11 am

    mas kohana-id.co.cc masih kosong nie baru berdua saya dan admin saja yang terdaftar

  13. cevarief permalink*
    23 September 2010 9:29 am

    wah, saya juga sudah tidak terlalu aktif pakai kohana sekarang. Beralih ke doophp yang lebih cepet, lalu ke framework php underdog lainnya yang lebih cepet lagi. Lagi doyan speed nih😛

  14. yoesoff permalink
    12 November 2010 10:26 pm

    info menarik nih pak, doophp apah tuh? kayaknya asik tuh hehe ulas juga donk pak…😛 saya sih biasa ma CI ma CakePHP buat cari makan, btw katanya kohana lebih advance ya coding nya?

  15. cevarief permalink*
    6 December 2010 8:36 am

    Kalau koding sih sebenernya sama aja, kan sama2 pake arsitektur MVC. Kalau bicara corenya mungkin iya, karena ada beberapa fitur yang tidak ada di CI.
    Untuk Doo bisa cek diwebsitenya. Yang saya suka dari doo yaitu routingnya, maknyuss banget😀 plus speednya juga kenceng.
    Sekarang sih aku lebih intense pake DingoFramework. Kecil cuma 100kb, lebih cepat dari Doo lagi. Dan cukup simple.

  16. 6 December 2010 10:53 pm

    Jadi tambah penasaran pengen ngoprek nih

  17. jaruled permalink
    21 December 2010 1:29 am

    Apa ada framework PHP buatan lokal?
    Sampai sejauh mana kemapuan programmer lokal dan apa hanya sebatas memodifikasi script dr framework yg dah jd?

    Baru kemarin saya dengar yang namanya kohana karena ada calon client yang minta di bikinkan CRUD framework kohana, dan baru mlm ini saya tau yang namanya CodeIgniter karena nyari2 info soal kohana tersebut.

    Terus terang awalnya saya juga tidak mengerti soal framework pada php ini. Dan ternyata itu hanya istilah saja yang selama ini saya sebut engine. Soalnya selama ini hanya terpatok pada PHP manual saja.

    Btw thanks infonya, akhirnya saya bisa kasi jawaban ma client.

  18. cevarief permalink*
    6 January 2011 10:13 am

    Buatan lokal ada, cuma frekuensi update FWnya kayaknya masih jarang ya.
    Panada
    Caramel
    Dugong

  19. 5 March 2012 1:42 pm

    Wah, saya juga masih bingung dengan kahona ini.. soalnya sudah terbiasa menggunakan CodeIgniter seih.. tapi pengen banget belajar kahona, kali aja lebih maknyuss….

    sampai sekarang saya masih menggunakan CI sebagai basis programming saya.. udah banyak abnget aplikasi CodeIgniter yang saya buat… bisa dilihat disini listnya :
    http://aplikasiphp.com/index.php/list_project
    http://aplikasiphp.com/index.php/mycv

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: