Siapa yang tidak pernah mendengar istilah framework? Apa itu framework? Sebagai seorang programmer kita pasti pernah mendengar instilah ini.
Framework secara umum dapat dikatakan sebagai sebuah kumpulan library, class-class, dan function yang memiliki fungsi khusus dan siap digunakan sehingga dapat mempercepat dan mempermudah pekerjaan kita sebagai programmer dalam membuat sebuah aplikasi dibandingkan dengan membuat semuanya dari 0.
Dengan adanya framework, maka kita bisa mendapatkan manfaat seperti:
- Menghemat waktu development dengan tidak membuat semua fitur dari 0.
- Memiliki standar khusus seperti standar penulisan kode sehingga kode yang ditulis menjadi lebih rapi, terstruktur dan mudah di maintenance oleh banyak orang.
- Biasanya framework dikembangkan secara open source, sehingga jika kita memiliki kesulitan maka akan memiliki banyak dukungan dari komuntas dari masing-masing framework.
Secara umum yang membedakan Native dengan framework adalah alur kerjanya. Jika dalam native kamu tidak terikat oleh alur khusus bahkan kamu bisa menciptakan alur kamu sendiri seperti tutorial membuat login dengan php ini .
Berbeda dengan framework yang secara umum memiliki konsep OOP. Jadi ada baiknya sebelum memulai menggunakan framework kamu harus paham tentang konsep OOP itu sendiri.
Selain OOP framework modern sekarang memiliki alur yang diberi nama MVC yaitu Model, View, Controller.
MODEL: bertugas untuk menangani semua fungsi yang berhubungan dengan data object. seperti database, json object, dan lain-lain.
VIEW: bertugas untuk menampilkan data melalui UI kepada user secara langsung.
CONTROLLER: bertugas sebagai jembatan antara View dan Model. Controller akan mengatur pertukaran data dari Model ke View maupun memproses request dari View ke dalam Model.
Berikut adalah contoh View, Model dan Controller dalam framework Laravel.
Model: Location.php
<?php
namespace Modules\Location\Entities;
use Dimsav\Translatable\Translatable;
use Illuminate\Database\Eloquent\Model;
class Location extends Model
{
public $timestamps = false;
protected $table = 'location__locations';
public $translatedAttributes = [];
protected $fillable = [];
}
Controller: LocationController.php
<?php
namespace Modules\Location\Http\Controllers\Api;
use App\Http\Controllers\Controller;
use Modules\Location\Repositories\LocationRepository;
use Modules\Location\Transformers\LocationTransformer;
class LocationController extends Controller
{
/**
* @var ServiceRepository
*/
private $location;
public function __construct(LocationRepository $locationRepository)
{
$this->location = $locationRepository;
}
public function index(){
return LocationTransformer::collection($this->location->paginate());
}
}
View: location.blade.php
@extends('layouts.master')
@section('content-header')
@stop
@section('content')
@stop
@section('footer')
<a data-toggle="modal" data-target="#keyboardShortcutsModal"><i class="fa fa-keyboard-o"></i></a>
@stop
Sudah mulai tertarik untuk menggunakan framework?
Kita berikan list PHP framework yang bisa kamu coba sekarang juga.
1. Laravel
Laravel menjadi pilihan pertama kamu karena merupakan framework php yang paling populer digunakan saat ini. Dengan dukungan komunitas dan dokumentasi yang lengkap jadi semakin mudah untuk dipelajari.
2. Lumen
Lumen bisa dibilang anak dari Laravel, Ini karena lumen mengambil sebagian kecil dari framework laravel yang dikhususkan untuk kamu yang ingin membuat rest api dengan performance yang tinggi.
3. Zend Framework
4. CodeIgniter 4
5. FuelPHP
6. PhalconPHP
7. Slim
8. Silex
9. CakePHP
10. Symfony
11. Yii2
Sekian pembahasan kita tentang PHP Framework dan list framework php yang bisa kamu mulai coba sekarang juga.