Apa Itu Composer PHP dan Bagaimana Cara Menggunakannya?

Sekitar tahun 2011 bahasa pemrograman PHP mengalami perubahan yang sangat membantu bagi para developer web, terutama bagi yang menggunakan bahasa PHP. Apakah kamu salah satu pengguna bahasa PHP? Sudah kenal dengan Composer belum? Jika belum mari kita ulas, namun sebelum itu sekilas mengenai Composer merupakan dependencies manager atau package manager yang berguna untuk mengelola library.

Banyak para developer atau programmer menyarankan Composer bagi pengguna bahasa pemrograman PHP. Hal ini dikarenakan dengan bantuan tools Composer akan mempermudah kamu dalam membangun proyek PHP dan mengelola library pada suatu proyek.

Apa Itu Composer

Apa itu composer php

Composer adalah sebuah tools dependency manager pada bahasa pemrograman PHP.  Dependencies jika diartikan adalah ketergantungan, maksudnya misalkan ketika kamu membuat suatu proyek dengan bahasa PHP , kemudian memerlukan library dari luar. Nah, composer ini bertugas sebagai konektor atau penghubung antara projek kamu dengan library yang kamu gunakan dari luar.

Jika kamu sebelumnya pernah menggunakan bahasa Python mungkin kamu tidak asing dengan pip, Java menggunakan Gradle dan Maven, Ruby menggunakan Bundler dan JS menggunakan NPM. Composer sama halnya dengan dependency manager yang ada pada bahasa pemrograman lain, hanya saja composer diperuntukkan untuk bahasa PHP saja. Composer pada dasarnya terinspirasi dari NPM dan Budler pada Ruby.

Dengan menggunakan Composer maka memungkinkan kamu untuk membuat library sendiri atau mengambil library pada situs penyedia library seperti packagist.org untuk digunakan pada projek kamu. Nah, Packagist.org ini adalah situs penyedia library yang bebas kamu gunakan, dengan menggunakan Composer maka kamu bisa terhubung dengan situs pakagist.org asalkan ada koneksi internet tentunya.
Bisa dikatakan Composer memungkinkan kamu mendefinisikan library apa saja yang diperlukan oleh projek kamu, kemudian Composer lah yang akan menangani proses instalasi dan pembentukan library-library tersebut untuk digunakan pada projek kamu.

Lalu siapakah yang membuat Composer dia adalah Nils Adermann dan Jordi Boggiano. Sejak dirilis pada tanggal 1 Maret 2012 para pengembang dan orang yang berkontribusi pada Composer semakin banyak.

Kenapa harus menggunakan Composer?

Mungkin kamu bertanya-tanya kenapa tidak mengunduh langsung saja menggunakan browser library yang akan digunakan kenapa kamu harus menggunakan Composer. Sebenarnya bukan diharuskan tapi sangat disarankan menggunakan Composer. Karena akan mempercepat instalasi library dan juga lebih leluasa dalam menggunakan library dari packagist.org. Bahkan ada beberapa library yang hanya dapat dipasang melalui Composer.

Dengan menggunakan tools Composer pada projek kamu, maka akan mempermudah pembaruan library tanpa harus menginstalnya secara manual. Dan yang tak kalah penting dengan menggunakan Composer kamu tidak perlu melakukan proses include terhadap semua berkas karena sudah terdapat fasilitas autoload yang akan menangani fungsi tersebut.

Bingung bagaimana cara memasang Composer di komputer kalian coba cek di postingan cara install composer berikut ini.

Bagaimana Cara Menggunakan Composer?

Sebelum itu pastikan terlebih dahulu Composer sudah terpasang pada perangkat kamu,jika belum kamu bisa mengunduh pada situs resminya di getcomposer.org. Sistem yang dibutuhkan untuk menginstall Composer adalah sistem operasi Windows, Linux atau mac OS, dan PHP yang terpasang harus versi 5.3.2 ke atas.

Untuk memastikan bahwa Composer telah terpasang pada perangkat komputer, kamu bisa mengeceknya dengan membuka CMD lalu masukkan perintah composer --version.

Composer version

Jika tampil Composer version bla bla maka bisa dipastikan bahwa Composer sudah terpasang dengan baik.

Pada artikel ini kita akan sedikit mengulas cara menggunakan Composer. Apabila menggunakan local server XAMPP, kamu bisa membuat folder baru di dalam folder htdocs misalkan nama foldernya dicodingcomposer. Kamu bisa membuat foldernya dengan cara seperti biasa atau melalui CMD dengan perintah mkdir. Setelah folder dicodingcomposer sudah ada buka direktori tersebut melalui CMD dengan perintah cd kemudian masukan perintah composer init.

COmposer init

Kamu bisa menuliskan informasi pada saat inisiasi yang sesuai dengan projek kamu kedepannya. Seperti nama, deskripsi, tipe projek beserta lisensinya. Namun untuk saat ini isikan pada description dengan Belajar Composer, tipenya latihan dan misalkan lisensinya GPL. Kemudian setelah itu saat ada konfirmasi untuk generate masukan perintah yes. Maka di dalam folder dicodingcomposer akan terdapat satu file dengan nama composer.json berisi informasi yang dimasukan pada saat inisiasi.

Untuk melihat isi file composer.json, kamu bisa membuka file tersebut dengan code editor atau melalui CMD dengan memasukkan perintah type composer.json.

composer json

Misalkan pada projek ini membutuhkan library Carbon, kamu bisa langsung mengunduhnya melalui composer dengan mengetikan perintah composer require nesbot/carbon. Apabila kamu tidak mengetahui nama package nya kamu bisa mencarinya pada situs packagist.org disana juga ada informasi mengenai cara penginstalannya menggunakan composer.

nesbot carbon composer

Sama halnya dengan package yang lain, misal kita akan menginstall package php spreadsheet namun tidak tahu namanya. Kamu bisa mencarinya terlebih dahulu melalui situs packagist.org.

packagist

Kembali lagi pada package Carbon setelah memasukan perintah maka Carbon akan segera diunduh. Proses ini membutuhkan waktu tergantung besarnya ukuran package dan kecepatan koneksi internet kamu.

COMPOSER

Setelah proses instalasi Carbon selesai, maka di dalam folder dicodingcomposer akan terdapat folder baru dengan nama vendor. Pada folder vendor inilah semua library dan dependency tersimpan. Lalu fungsi dari file atau folder baru yang dibuat oleh Composer itu untuk apa? Berikut ulasanya :

  • Composer.json merupakan berkas yang berisikan informasi yang sebelumnya kita buat dan dependensi dari library suatu proyek.
  • Composer.lock merupakan berkas yang berisikan versi package dan dependensi yang saat ini terinstall beserta sumbernya.
  • Vendor merupakan folder yang berisikan library atau package yang sudah terinstall. Setiap kamu menginstall package maka akan disimpan folder vendor.
  • Vendor/autoload.php merupakan berkas yang berfungsi untuk memanggil autoloader dari composer.

Kamu juga bisa menginstall beberapa package atau library secara sekaligus dengan memasukan nama package beserta versinya ke dalam file composer.json pada bagian require kemudian masukan perintah pada CMD composer install.

Untuk melakukan update kamu bisa merubah versi package pada file composer.json pada bagian require, kemudian masukan perintah pada CMD composer update. Perintah composer update ini berfungsi untuk memperbarui package yang telah terinstall apabila kamu merubah versi package, sedangkan jika kamu menambah package baru pada bagian require maka package tersebut akan di instalkan.

Selain dari itu Composer juga bisa menjalankan web server. Kamu hanya perlu mendefinisikan server dan portnya pada file composer.json. cara mendefinisikannya seperti berikut :

"scripts": {
        "server": "php -S localhost:8080"
}

[GAMBAR SCRIPT SERVER]

Simpan kembali file composer.json. Berikutnya masukkan perintah composer server pada CMD lalu tekan enter, maka web server akan berjalan dengan sendirinya.

Composer server

Untuk mengetesnya, coba buka web browser lalu masukan url http://localhost:8080

Composer localhost8080


Maka akan tampil Not Found seperti gambar di atas, jangan dulu risau walaupun muncul seperti itu. Ini dikarenakan pada folder dicodingcomposer belum ada file index.php, kamu bisa membuat file baru dengan nama index.php di dalam folder dicodingcomposer,

Demikian pengenalan mengenai Apa Itu Composer? Bagaimana Cara Menggunakannya?. Kesimpulannya dengan menggunakan Composer, kamu akan mempunyai akses yang luas serta mudah dalam memperoleh berbagai package atau library. Sehingga ini dapat meningkatkan efektivitas kerja kamu dalam mengembang kan projek.

Post a Comment

0 Comments