Minggu, 25 Desember 2011

Pentingnya Penggunaan Framework dalam Pemrograman

CodeIgniter Framework
Setiap programmer PHP perlu memahami pentingnya memanfaatkan framework didalam membangun sebuah aplikasi. Ini tidak berlaku untuk programmer PHP saja, tetapi juga untuk setiap programmer dengan menggunakan bahasa pemrograman manapun. Tanpa adanya sebuah software framework maka pengembangan sebuah aplikasi akan menjadi semakin rumit dan memakan waktu yang lama. Karena biasanya sebuah software framework yang baik akan mampu menangani seluruh hal-hal standar yang dibutuhkan didalam pengembangan aplikasi. Hal-hal standar tersebut contohnya adalah masalah security, text-processing, pemodelan pemrograman (misalnya: modular atau MVC), database connectivity, dan lain-lain. Sehingga pada akhirnya seorang programmer hanya perlu fokus pada logika pemrograman yang berhubungan dengan kebutuhan untuk apa aplikasi tersebut dibangun. Hal yang perlu diperhatikan disini adalah bahwa setiap pengguna salah satu framework akan merasakan betapa mudahnya sebuah aplikasi itu dibangun dengan menggunakan framework tersebut jika dibandingkan tanpa menggunakan sebuah software framework.
Didalam dunia pemrograman PHP ada beberapa framework PHP yang terkenal dan sering dipakai untuk membangun sebuah aplikasi. Misalnya CodeIgniter, Zend Framework, CakePHP ataupun Symphoni. Tetapi didalam artikel ini tidak akan dibahas framework-framework tersebut secara satu persatu. Hal ini akan dibahas pada artikel yang lain. Selain itu saya tidak menekankan agar anda memakai salah satu software framework tertentu yang mungkin menurut anda lebih baik. Karena untuk menilai sebuah framework itu lebih baik dari yang lain diperlukan sebuah proses review yang mendalam. Siapa tahu anda juga dapat membuat software framework anda sendiri yang lebih hebat dari framework-framework yang sudah ada sekarang.
Software framework jika bisa dijelaskan adalah sekumpulan kode (code library) yang dirancang untuk memfasilitasi sebuah pengembangan aplikasi dengan membuat bagian-bagian berupa fungsi ataupun abstrak dari suatu bahasa pemrograman dan selanjutnya membuat serta menyediakan aturan-aturan standar bagaimana bagian-bagian berupa fungsi ataupun abstrak tersebut dapat diakses serta digunakan.
Dibawah ini adalah alasan-alasan mengapa menggunakan sebuah software framework didalam pemrograman PHP menjadi sangat penting. Walaupun didalam artikel ini tidak dibahas secara lengkap tentang pengertian framework secara lebih rinci namun diharapkan dengan membaca artikel ini anda akan beralih menjadi programmer yang framework-minded didalam pengembangan aplikasi.
Alasan ke-1 : Efektifitas dan Efisiensi Pemrograman
Dengan menggunakan sebuah software framework yang baik setidaknya akan mengurangi beban kerja seorang programmer karena akhirnya fokus seorang programmer hanya pada logika proses (alur proses pada aplikasi) sesuai dengan kebutuhan yang diminta kepadanya. Tentunya ini akan membuat pekerjaan pengembangan aplikasi akan menjadi cepat dan akan berujung pada penyerahan pekerjaan yang tepat waktu.
Mungkin akan menjadi semakin jelas jika saya berikan contoh. Untuk masalah security program tidak semua programmer mampu menangani permasalahan ini. Padahal fungsi security termasuk yang sangat penting didalam sebuah aplikasi besar yang membutuhkan tingkat security yang baik. Apalagi misalnya pada aplikasi yang menangani privacy keanggotaan pada sebuah komunitas ataupun aplikasi yang mengolah data berupa angka yang membutuhkan tingkat ‘kerahasiaan’ yang tinggi. Dengan memilih sebuah framework yang memiliki tingkat sekuritas yang baik, maka selanjutnya programmer hanya perlu memfokuskan diri pada kebutuhan untuk apa fungsi keamanan itu dibuat. Tentunya ini akan menghemat waktu bukan?
Alasan ke-2 : Memudahkan Stukturisasi dan Standarisasi Pemrograman
Masalah ini biasanya muncul jika seorang programmer sedang mengembangkan sebuah aplikasi besar apalagi sistem yang dibangun termasuk yang berukuran ‘raksasa’. Semakin banyak kode-kode program yang dibuat akan semakin sulit proses debugging-nya apabila jika kemudian terjadi error program atau jalannya program tidak sesuai dengan yang diinginkan. Maka dari itu pilihlah sebuah software framework yang memiliki standar serta struktur program yang baik, yaitu yang memudahkan anda untuk menelusuri, mencari bagian-bagian dari kode program anda yang mungkin perlu diperbaiki ataupun dikustomisasi.
Sebagai contoh pada framework CodeIgniter (CI) yang menggunakan konsep MVC (Model-View-Controller). Dengan konsep MVC ini maka seorang programmer bisa memilah-milah antara View, Controller dan Model dan selanjutnya mengembangkan sendiri struktur programnya. Maka penggunaan framework CodeIgniter membantu seorang programmer dalam menstrukturkan kode programnya berdasarkan konsep MVC, yaitu dengan memisahkan antara file-file tampilan/HTML pada bagian view, sedangkan file-file yang menangani logika proses pada bagian controller dan file-file yang menyimpan fungsi-procedure ataupun model pada bagian model. Dengan demikian selain kita bisa menggunakan semua library yang disediakan oleh software framework tersebut kita juga bisa menggunakannya sebagai standar untuk menstrukturkan program kita.
Alasan ke-3 : Memudahkan Koordinasi dan Pemeliharaan Untuk Pemrograman Terdistribusi
Pada pengembangan aplikasi yang berukuran besar seringkali seorang project manager harus melibatkan banyak anggota tim programmer. Sehingga pekerjaan pada satu buah proyek yang besar harus didistribusikan kepada tim yang beranggotakan programmer dengan jumlah yang banyak pula. Mungkin pada kasus ini mengikuti sebuah prinsip ‘semakin banyak orang yang terlibat semakin banyak pula solusi yang tercipta’. Walaupun tidak seluruhnya terbukti benar, karena kita sering menemui kenyataan bahwa semakin banyak orang semakin banyak pula keinginannya. Jadi sulit untuk mengatur banyak orang. Sehingga dengan banyaknya programmer yang terlibat pada suatu proyek menciptakan permasalahan yang tidak kalah rumit yaitu masalah standarisasi dan koordinasi. Sehebat apapun tim programmer didalam sebuah proyek tetapi kalau tidak terkoordinasi dengan baik dan juga standar yang baik didalam membuat kode program maka pengerjaan proyek tersebut bisa terlambat dan ujung-ujungnya proyek menjadi merugi. Dengan demikian penggunaan software framework akan membuat terkoordinasinya pekerjaan tim anda dan dengan melibatkan banyak anggota programmer akan menjadikan sebuah proyek dapat dikerjakan dengan lebih cepat. Jika sudah demikian maka menurut pengalaman saya, sebuah tim proyek hanya membutuhkan seorang integrator yang tugasnya mengintegrasikan hasil kerja anggota tim menjadi sebuah aplikasi besar.

Source : sumber

1 komentar: