Bekerja dalam kerangka

disclaimer : saya bicara tentang php, bukan bahasa yang lain, segala perspektif yang ada disini bersifat subyektif dan tidak bermaksud untuk menyinggung pihak lain, berbeda pendapat? tentu sangat diperbolehkan.

Unreal cube.

sebuah kerangka, akan saya artikan seperti sebuah batasan-batasan, yang bisa jadi akan membatasi langkah, gerak, imajinasi, dan mungkin pula solusi, membuat kita terkurung dengan bahan-bahan yang telah ditentukan.

beberapa pekerjaan terakhir saya mengharuskan saya ‘bermain’ atau berurusan dengan framework php, framework sendiri bisa diartikan sebagai kerangka kerja pemrograman, dimana seorang programmer cukup menggunakan library-library yang telah tersedia, untuk mempermudah proses pembuatan program.

sebenarnya dari awal saya mendengar kata framework dan apa gunanya, saya sudah berfikir untuk tidak menggunakan framework, alasan saya saat itu adalah karena ‘setiap orang punya cara dan metode pendekatan yang berbeda’ dan yang lebih sederhana adalah alasan ‘saya ingin membuat sesuatu dengan cara saya, ngapain ikut cara orang lain?’

tapi pekerjaan yang akhirnya membuat saya bersentuhan dengan framework, dan saat menggunakannya hingga pekerjaan itu hampir selesai, saya masih saja berfikir ‘apa sih gunanya nih framework?’, karena bagi saya penggunaan framework ini buang-buang tenaga, kenapa?

begini, framework selalu menyertakan banyak library, class, function, method dan lain sebagainya, dan sering kali dari sekian banyak fitur yang ada, tidak semua digunakan, dan mungkin fitur yang ada tidak bisa memnuhi kebutuhan sehingga programmer harus menambahkan plugin atau fungsi baru.

proses ini lah yang akhirnya membuat saya berfikir bahwa ini buang-buang tenaga, dan sebenarnya bukan hanya tenaga saja yang dibuang, tapi juga space hosting yang ada, sesederhana kalo saya hanya butuh space 5MB untuk program saya, kenapa harus menghabiskan 20MB karena pake framework. dan ini bukan hanya soal space, mengingat bagaimana cara menggunakan php dengan Object Oriented Programming, tentu proses loading banyak library akan mempengaruhi loading program utamanya.

belum lagi, perkembangan framework yang digunakan diseluruh dunia dan tidak pernah adanya buatan manusia yang sempurna, maka apabila ada yang bisa menembus pertahanan pusat framework di satu tempat, maka pengguna framework dengan tipe dan versi yang sama, akan memiliki kerentanan terhadap serangan yang sama pula.

ya memang, bisa saja ini hanya terjadi di php, dan bisa jadi framework untuk bahasa pemrograman yang lain bisa lebih efisien. hmm.. teman-teman saya sesama programmer selalu mendengungkan bahwa dengan framework, apa yang kita bikin nantinya bisa di re-use alias dipake lagi dikemudian hari, dan jawaban saya pun sederhana ‘selama ini saya selalu pake source saya yang dulu-dulu koq :p’

ada yang bilang juga kalo framework akan sangat berguna untuk era kolaborasi sekarang ini, dimana sebuah project bisa dikerjakan oleh banyak programmer yang ada dibanyak tempat pada saat yang bersamaan, dan dengan framework, para programmer tersebut tidak perlu susah-susah untuk berargumentasi mengenai apa dan bagaimana rangka awal sebuah fitur dibuat.

tapi itu juga masih bisa dibantah, karena kembali lagi setiap orang memiliki cara pemikiran dan pendekatan yang berbeda tentang apa dan bagaimana sesuatu itu dibuat, dan bisa jadi pada akhirnya titik temu dari pendekatan yang berbeda itu memutuskan untuk tidak lagi menggunakan framework.

saya tidak menyarankan penggunaan framework bagi mereka yang baru atau sedang belajar pemrograman, daripada belajar framework, lebih baik meluangkan waktu lebih banyak untuk mempelajari algoritma, logika, struktur pemrograman,  dan banyak latihan membuat program sendiri. membuat program sendiri? ya.. karena dengan merasakan sulit hingga mudahnya membuat program sendiri, sedikit banyak akan memberikan modal yang lebih sebelum menginjak kepada kolaborasi pemrograman hingga nantinya menggunakan framework.

kalo saya? saya lebih senang menggunakan model tailor made software dari pada framework based software, bukan karena tidak suka atau tidak mau, tetapi lebih karena sebuah aplikasi itu selalu unik, dan akan selalu membutuhkan perlakuan yang unik pula..

hmm.. dan karena suatu saat saya akan membuat framework saya sendiri, dan saya sudah melakukannya dari beberapa waktu yang lalu.

so.. happy coding :)

— gambar diambil dari sini

By Alit Mahendra Bramantya

Complicatedly simple, not just another internet presence enthusiast. Currently managing Research (including Analytics) Division at Think.Web with Web App Development and Digital Analytics as main responsibility. Views are my own.

3 comments

  1. hmm.. dan karena suatu saat saya akan membuat framework saya sendiri, dan saya sudah melakukannya dari beberapa waktu yang lalu.

    sudah berapa lama kalimat itu ada? :P

  2. Terimakasih pencerahannya,
    aLe sbg nyubi dpt tambahan referensi.
    Btw,
    Sepakat ama yang 5mb,
    Ibaratnya aLe di Wp,
    Kalau tanpa plugin bisa mengapa harus pakai.

Comments are closed.

%d bloggers like this: