[:id]7 Alasan Menggunakan Framework Laravel dibandingkan native PHP[:]

[:id]

Artikel ini, ditujukan bagi web developer yang masih senang menggunakan PHP native atau membuat “framework” sendiri dan lebih ke menambah wawasan kenapa sebaiknya kita menggunakan framework PHP pada umumnya, dan lebih khususnya framework Laravel.

1. Menghindari repetitive work

Membangun berbagai fitur di website itu cukup memakan waktu. Apalgi jika kita membangunnya sendiri. Itulah sebabnya, dalam industri web itu ada yang namanya NIH (Not Invented Here). Jadi, untuk beberapa fitur web, kita serahkan ke library lain yang bukan hasil bikinan kita.

Contoh sederhananya adalah fitur export excel. Fitur ini sangat sering saya temui dalam membuat website. Bisa saja saya membuat library sendiri yang merubah file teks biasa menjadi excel, tapi pasti memakan waktu. Oleh karena itu, fitur ini selalu saya percayakan ke library PHP Excel.

Laravel, bekerja di bawah level library itu. Ia bekerja meng-abstraksi fitur-fitur native PHP. Banyak sekali contohnya, dari Session, Redirect, Autentikasi, Cache, Input, Lokalisasi, Routing, Database, Queue dan sebagainya. Yang jika saya jelaskan semuanya bisa selesai satu buku.

Dalam mengembangkan aplikasi PHP, pasti kita sering berurusan dengan URL. Yang paling sederhana, adalah kita membuat subfolder dengan berbagai file php di dalamnya. Misalnya:


index.php
/blog/index.php
/blog/berita/index.php
/blog/kategori/index.php
/kontak.php
dst..

Tentunya, cara seperti ini tidak efektif untuk dilakukan untuk aplikasi yang besar. Karena, kita tidak akan paham struktur URL di website yang dibangun tanpa melihat isi tiap foldernya.

Teknik lain dalam routing ini adalah dengan menggunakan pattern Front Controller. Jika Anda belum paham, pattern ini memungkinkan kita membuat sebuah aplikasi PHP dengan url yang kompleks tapi hanya memiliki satu file index. Pattern ini sangat sering ditemui di berbagai CMS populer misalnya wordpress.

Untuk membangun pattern ini, ada cukup banyak hal yang harus Anda lakukan dari membuat logic front controller dan setup url writing di web server (misalnya dengan .htaccess di apache). 

Routing di Laravel akan memudahkan developer membuat aplikasi dengan pattern Front Controller. Routing Laravel telah mengabstraksi fitur URL di PHP untuk melakukan hal dasar ini. Contoh sederhananya, jika kita ingin membangun URL seperti diatas, kita cukup mengisi file routes.php dengan:

Routing di Laravel akan memudahkan developer membuat aplikasi dengan pattern Front Controller. Routing Laravel telah mengabstraksi fitur URL di PHP untuk melakukan hal dasar ini. Contoh sederhananya, jika kita ingin membangun URL seperti diatas, kita cukup mengisi file routes.php dengan:


Route::get(‘/’, …);
Route::get(‘blog/{blog-title?}’, …);
Route::get(‘blog/berita/{id?}’, …);
Route::get(‘blog/kategori/{id?}’, …);
Route::get(‘kontak’, …);
dst…

Dengan cara ini, ada beberapa keuntungan:

  • Untuk menambah/mengubah/menghaps URL, kita cukup memodifikasi file routes.php.
  • Untuk mengetahui route apa saja yang tersedia di aplikasi, kita pun cukup membuka file routes.php.

Bahkan Laravel menyediakan fitur untuk mengetahui semua route dengan satu perintah, yaitu php artisan routes. Ini salah satu contoh outputnya:

2. Security

Keamanan aplikasi merupakan nomor satu dalam mengembangkan website. Terlebih jika website tersebut menyimpan banyak data yang sangat penting.

Keamanan merupakan hal yang terus berkembang. Riset terus dilakukan. Tiap hari celah baru ditemukan. Begitupun dengan penutup celahnya.

Mengikuti perkembangan keamanan aplikasi PHP, misalnya di phpsec, exploit-db, sensiolabs security, dsb bisa cukup melelahkan dan menyita waktu.

Laravel dengan komunitasnya, hadir memastikan fondasi dari aplikasi yang kita bangun benar-benar aman dari masalah security dasar seperti ini. Dari mulai pengamanan csrf, autentikasi, sanitasi data, validasi data dsb telah dilakukan oleh framework Laravel. Semuanya itu kita dapat dengan gratis. Sekiranya ada lubang keamanan di framework ini, tentu akan banyak developer lain yang tahu. Dan, penutup celah keamanan ini akan segera dirilis.

3. Quality

Sebagaimana saya jelaskan di poin 2. Laravel akan menjadi fondasi dari aplikasi yang kita bangun. Jika kita hendak membangun rumah, tentunya fondasi yang kokoh dan kuat akan menopang rumah yang besar. Bahkan, gedung pencakar langit sekalipun bisa dibangun diatasnya.

Yap, begitulah Laravel. Dimulai dari standar code yang mengikuti PSR0 dan PSR1. Begitupun dengan syntax dari framework ini, ada ratusan test yang berjalan ketika sebuah syntax baru dimasukkan ke dalam framework ini. Jadi, kita bisa memastikan bahwa framework ini benar-benar solid dan aman. Siap menjadi fondasi dari aplikasi kita, sebesar dan sekompleks apapun.

4. Memudahkan Teamwork

Jika ada developer baru yang masuk ke project, dia cukup mempelajari dokumentasi resmi Laravel. Ini akan sangat menghemat waktu.

Suatu saat dia menemukan fitur yang tidak dipahami dari Laravel, dia cukup buka google dan lautan informasi akan datang menghampirinya. Ada pula forum resmi maupun tidak resmi yang siap menjawab pertanyaannya.

Yap, memang ada kepuasan tersendiri ketika kita membuat framework sendiri. Tapi ingat, framework yang solid itu tidak hanya dibangun dari codebase yang kompleks dan arsitektur yang berlapis-lapis. Tapi, ditambah pula dengan dokumentasi yang lengkap dan codebase yang selalu diaudit dari berbagai masalah keamanan dan performa.

5. Interoperability

Jika Anda hendak membangun aplikasi open source, Anda harus memastikan codebase yang digunakan dipahami oleh banyak orang. Dengan begitu, akan lebih banyak orang yang akan berkontribusi di project tersebut.

Laravel dengan popularitas dan berbagai kelebihannnya menjawab masalah itu. Dapat kita temui banyak project opensource menggunakan Laravel, misalnya Flarum, sebuah aplikasi forum yang dibangun diatas Laravel dan EmberJS.

6. Hemat Biaya

Beberapa hal yang akan mengeluarkan biaya ketika Anda menggunakan PHP native atau membuat framework sendiri:

  • Membuat dokumentasi penggunaan
  • Membuat dokumentasi API framework
  • Maintenance security
  • Maintenance bug
  • Maintenance performa
  • dll.

7. Hemat Waktu

Dengan berbagai abstraksi yang dilakukan Laravel, Anda dapat lebih fokus memikirkan logic bisnis dari aplikasi yang Anda buat.

Waktu Anda tidak perlu lagi disia-siakan dengan mengurusi hal-hal dasar di PHP. Titik.

Tentunya, dari semua alasan diatas, pilihan tetap saja jatuh ke tangan Anda. Jika aplikasi yang dikembangkan sangat simple, tentunya penggunaan Laravel bisa overkill.

sumber: https://medium.com/laravel-indonesia/7-alasan-menggunakan-framework-laravel-dibandingkan-native-php-89462abd806

[:]

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *