Laravel adalah sebuah framework PHP. Untuk bisa memahami ini, kita harus bahas terlebih dahulu apa yang dimaksud dengan framework.
Dalam tutorial pertama seri belajar Laravel di Duniailkom ini akan di bahas tentang Pengertian Framework serta apa perbedaan framework dengan library.
Pengertian Framework
Secara sederhana, framework adalah kumpulan kode program siap pakai dengan aturan penulisan tertentu yang bertujuan untuk memudahkan serta mempercepat pembuatan aplikasi. Lebih spesifik lagi, PHP framework adalah framework yang dibuat menggunakan bahasa pemrograman PHP.
Tujuan utama kenapa menggunakan framework adalah untuk mempercepat pembuatan aplikasi, karena di dalam framework sudah tersedia berbagai fitur siap pakai. Kita tinggal menggunakan fitur ini tanpa perlu membuat semuanya dari nol. Selain itu aturan penulisan di framework akan memaksa kita menggunakan cara penulisan yang baik (mengikuti standar best practice).
Framework pada awalnya berasal dari kebutuhan programmer untuk mengurangi pembuatan kode yang sama berulang kali.
Sebagai contoh, misalkan saya bekerja sebagai programmer di sebuah perusahaan software. Project pertama disuruh membuat sistem informasi sekolah, dimana perlu fitur pendaftaran mahasiswa, pendaftaran dosen, login mahasiswa dan login dosen.
Setelah selesai, lanjut ke project kedua untuk membuat aplikasi perpustakaan yang diantaranya perlu halaman pendaftaran karyawan serta login karyawan. Project ketiga berupa website berita yang juga perlu fitur pendaftaran editor dan login editor.
Sampai di sini bisa dilihat bahwa untuk ketika project, saya perlu membuat fitur pendaftaran dan login. Dan besar kemungkinan untuk project keempat dan seterusnya juga butuh fitur serupa.
Daripada membuat dari nol terus menerus, akan lebih efisien jika saya menyiapkan sebuah kode dasar untuk halaman pendaftaran dan login. Jika project baru butuh fitur yang sama, tinggal copy kode ini dan edit sedikit di bagian tertentu. Pekerjaan selesai dengan jauh lebih cepat.
Seiring bertambahnya pengalaman, kode dasar ini saya modifikasi dengan tambahan berbagai fitur baru agar semakin lengkap, misalnya menambah cara koneksi ke database, penanganan cookie, validasi form, dst. Akhirnya, jadilah sebuah framework!
Beberapa waktu kemudian, saya merasa framework ini sangat memudahkan dan ingin berbagi dengan programmer lain. Selain berbuat baik (karena banyak yang akan terbantu), saya berharap programmer lain juga bisa memberikan koreksi serta menambah fitur-fitur lanjutan.
Jadi, sebenarnya siapa saja bisa membuat framework (tentunya selama memiliki skill), namun di antara sekian banyak framework, ada yang lebih populer dari yang lain. Alasannya bisa jadi karena fitur yang disediakan lebih banyak, penggunaannya lebih mudah, serta memiliki komunitas yang aktif.
Jika framework itu dibuat dengan struktur yang rapi dan mudah digunakan, maka secara perlahan makin banyak programmer lain ikut berkontribusi. Mayoritas framework juga bagian dari open source project sehingga bisa kita pakai dengan gratis.
Terdapat berbagai framework untuk keperluan yang berbeda-beda. Sebagai contoh, Bootstrap adalah sebuah framework CSS yang berisi kumpulan kode CSS untuk mempercepat pembuatan design web. Selain Bootstrap masih banyak framework CSS lain seperti Materialize, Zurb Foundation, Bulma, dan Semantic UI.
Begitu juga di PHP, terdapat berbagai pilihan framework seperti Code Igniter, Symfony, Yii, Zend dan tentu saja Laravel.
Dengan menggunakan framework, ibaratnya kita memanfaatkan keahlian ribuan programmer yang sudah lebih dahulu memikirkan apa yang harus dibuat dan bagaimana cara terbaik untuk membuatnya.
Perbedaan Framework dengan Library
Selain framework, terdapat juga istilah library. Keduanya sama-sama berisi kode program yang dibuat oleh programmer lain dan bisa dipakai untuk mempercepat pembuatan aplikasi.
Library umumnya berisi kumpulan kode program untuk tugas yang lebih spesifik (biasanya untuk 1 fungsi saja) sehingga lebih sederhana daripada framework.
Misalnya kita butuh membuat perhitungan statistika, maka bisa mencari library yang berisi rumus-rumus statistik siap pakai. Kode program ini biasanya berbentuk function atau class. Prinsip utama dari library adalah, kita tetap memiliki kontrol tentang cara penulisan kode program.
Sebagai contoh, dompdf adalah library PHP yang bisa dipakai untuk membuat file pdf. Atau jQuery, yang merupakan salah satu library populer dari JavaScript.
Framework lebih kompleks daripada library dan dipakai untuk membuat sebuah aplikasi utuh, tidak hanya untuk 1 tugas saja. Pada prakteknya, di dalam framework bisa jadi terdapat puluhan library yang saling bekerja sama.
Prinsip utama dari framework adalah, kita tidak memiliki kontrol tentang cara penulisan kode program. Framework sudah memiliki aturan penulisan baku yang harus di ikuti.
Tips praktis untuk bisa membedakan library dan framework adalah, jika kode tambahan tersebut ada di dalam kode kita, maka besar kemungkinan itu adalah sebuah library. Sedangkan jika kita menginput sesuatu ke kode program yang sudah ada maka besar kemungkinan itu adalah sebuah framework.
Dalam tutorial kali ini kita sudah membahas tentang pengertian framework, dimana Laravel itu sendiri merupakan salah satu framework PHP. Berikutnya, akan dibahas tentang salah satu topik yang sering ditanyakan, yakni Framework vs PHP Native.
Sumber wk.com
EmoticonEmoticon