Mengenal Composer
Apa itu Composer?
Dahulu, untuk membuat sebuah aplikasiwebsile, programmer akan membuat
semua skrip dari awal. Kemudian mereka menyadari bahwa setiap aplikasi biasanya memiliki lungsi-fungsi yang sama, misalnya: mengirim email, membuat
pagination, manajemen database, autentitikasi, manipulast string dan sebagain
Maka mereka mulai mengoleksi skrip-skrip tersebut untuk digunakan pada provek
berikutnya. Selain skrip yang dibuat sendiri, terkadang skrip-skrip tersebut juga
didapatkan dari internet.
Seiring dengan semakin diterimanya Object Oriented Programming (OOP) di
komunitas PHP, maka semakin timbul kesadaran akan pentingnya membuat kode
yang reusable. Kode tersebut berupa class-class library yang bersifat modular,
artinya dapat dipasang ketika diperlukan, seperti bongkar pasang.
Sebelumnya, PHP memiliki kumpulan skrip/library resmi yang disebut PHP
Extension and Application Repository (PEAR) dan PHP Extension Community
Library (PECL).
Ketika kita membutuhkannya dalam membuat sebuah aplikasi
kita bisa memasangnya sesuai kebutuhan. Namun karena dianggap banyak
kekurangan, terlalu rumit penggunaannya dan ukuran yang besar, maka tidak
banyak yang memakainya.
Pada titik inilah, mulai berkembang framework PHP yang lebih sederhana dan
mudah dipakai.
Sebut saja Codeigniter dan CakePHP, dua framework PHP yang
cukup populer karena ukuran yang kecil serta mudah digunakan. Framework
tersebut menyediakan fitur-fitur dasar yang biasa diperlukan pada sebuah aplikası,
namun dengan tidak berlebihan. Jika ada fitur yang tidak tersedia kita tinggal
menambahkan, baik dengan membuat sendiri atau memasang library pihak keiga
Permasalahan muncul ketika framework-framework tersebut ternyata memiliki
cara implementasi/aturan-aturan yang berbeda dalam membuat sebuah kode.
Sebuah library yang semula dibuat untuk Codeigniter, ternyata tidak 100 persen sesuai untuk CakePHP, begitu pula sebaliknya. Bahkan sebuah library yang dibuat untuk
Kohana temyata juga tidak sesuai untuk Codeigniter, dimana Kohana adalah produk turunan dari Codeigniter Hal ini memaksa programmer untuk membuat
library yang spesifik untuk setiap framework.
Framework PHP yang sebenamya
lahir sebagai pengganti PEAR dan PECL tenyata masih memiliki masalah yang
sama, yaitu kode yang tidak reusable. Masalah inilah yang terkadang membuat
komunitas PHP dipandang sebelah mata dan dianggap sebagai amatiran.
Sebuah library yang dalam perkembangannya disebut Package (paket) di
komunitas PHP, biasanya dibuat oleh orang/kelompok yang berbeda. Kemudian
mereka membagnya di internet.
Dalam perjalanannya, tak jarang paket tersebut
mengalami perbaikan/update, baik itu karena perbaikan bug atau penambahan
fitur dan fungsi. Sehingga paket tersebut memiliki beberapa versi
Sebuah paket, terkadang juga dibuat dengan memanfaatkan paket lainnya.
Katakanlah Paket A dibuat dengan memanfaatkan Paket C.
Dengan demikian
dapat dikatakan bahwa Paket A tergantung dengan Paket C. Faktanya, sebuah
paket terkadang dibuat dengan memanfaatkan beberapa paket sekaligus. Pada
contoh sebelumnya, Paket C ternyata dibuat dengan memanfaatkan Paket K dan
Paket M. Dengan demikian Paket C tergantung pada Paket K dan Paket M. Jadi,
Paket A tergantung kepada Paket C, K dan M. Ilustrasinya lihat pada gambar dibawah.
Aplikasi
Paket A
Paket C
aww
Paket K
Paket M
Gambar 1.1 lustrasi hubungan antar class pada beberapa paket.
Pada gambar 1.I bukan merupakan diagram standar yang digunakan untuk
menggambarkan hubungan antar class, 1tu cara saya agar penggambaran konsep
hubungan antar class pada suatu/beberapa paket dapat mudah dimengerti.
Sudah disebutkan sebelumnya, bahwa sebuah paket terkadang memiliki beberapa
versi. Bagaimana seandainya Paket A versi 1.0 mermbutuhkan Paket C versi 2.5.
Paket C versi 2.5 tersebut membutuhkan Paket K dengan versi minimum 2 dan
maksimum versi 4.0. Selain itu, Paket C 2.5 tersebut membutuhkan Paket M
dengan versi 3.5.5 ke bawah, karena jika menggunakan Paket M dengan ve
atas 3.5.5, maka Paket C 2.5 menjadi tidak berfungsi dengan baik. Dari contoh tersebut dapat disimpulkan bahwa sebuah paket dapat bergantung
dengan paket lainnya. Ketergantungan ini biasa disebut dependency.
Dan
setiap paket memiliki dependency-nya masing-masing.Selain itu, sebuah paket
dapat memiliki versi yang berbeda-beda, dan terkadang pada suatu dependencv
juga mensyaratkan versi terientu yang spesifik.
ency
Menyadari rumitnya permasalahan tersebut, komunitas PHP harus menemukan
cara yang lebih baik lagi untuk mengatur supaya sebuah paket pihak ketiga dapat
dipasang pada suatu aplikasi dengan cara yang mudah dan universal, tidak melihat
apa framework-nya, atau bahkan jika aplikasi tersebut tidak memakai lramework
sama sekali. Dengan kata lain, komunitas PHP membutuhkan Package Manager
yang lebih baik.
Dari kebutuhan inilah, maka lahir Composer.
Composer adalah package manager PHP. Dibandingkan dengan bahasa
pemrograman lainnya, kelahiran package manager di PHP terbilang agak
terlambat. Sebenarnya Composer terinspirasi dari NPM yaitu package manager
Node.js, dan Bundler yang merupakan package manager Ruby.
Dengan Composer, maka prOses instalasi sebuah paket menjadi lebih mudah.
Ketika aplikasi yang kita buat membutuhkan Paket A seperti contoh di atas,
maka dengan sekali perintah Composer akan memasang Paket A berserta semua
dependency-nya (Paket C, K, M), tepat dengan versi yang disyaratkan.
Composer
akan mengurus semua ketergantungan antar paket secara otomatis. Pakel-paket
yang diatur memakai Composer disimpan pada sebuah repository server terpusat
yaitu https://packagist.org
Lantas apa hubungan Composer dan Laravel? Laravel dibangun dengan banyakk
Komponen yang dikenal dengan paket, baik itu paket yang dibuat oleh tm
pengembang Laravel sendiri, atau paket dari pihak ketiga. Faktanya Laravel
banyak menggunakan paket dari tramework symfony dan beberapa paket popule
lainnya, Nah, Composer digunakan untuk menginstal Laravel, beserta semua
dependecy-nya.
Selain itu, Composer Juga digunakan untuk menambah paket
paket lan jika diperlukan.
Saat ini, beginilah cara modem untuk membangun sebuah aplikasi PHP. Aplikast
PHP dibuat dengan memakai framework (atau tidak sama sekali) ditambah paKCt
paket lain yang dibutuhkan, semuanya diatur dengan Composer. Berbeda denga
dahulu, dimana kita harus membuat semua kode skripnya dari awal. lapi tentu saja untuk menampilkan "hello world" kita tidak perlu memakai framework, apalagi composer.
Instalasi Composer
Langkah-langkah untuk instal composer adalah sebagai berikut :
Langkah 1:
Anda dapat download Composer Pada url berikut :https://getcomposer.org/download/
Langkah 2 :
download file composer pada halaman tersebut dengan mengklik tautan Composer-Setup.exe, berikut adalah halaman download composer.
Langkah 3 :
setelah file Composer-Setup.exe didownload selanjutnya double klik file tersebut untuk memulai proses instalasi,kemudian akan muncul tampilan seperti berikut :
selanjutnya tekan tombol next maka akan muncul tampilan berikutnya seperti pada gambar 4.
Langkah 4 :
pada tahap ini akan diminta untuk mencari lokasi tempat php terinstal, jika anda sudah instal xampp biasanya php.exe berada pada lokasi seperti gambar diatas yaitu C:\xampp\php\php.exe.
Langkah 5 :
selanjutnya tekan kembali tombol Next maka proses instalasi akan berjalan jika diminta untuk memasukan proxy anda tekan Next saja tidak perlu menceklist use a proxy server to connect internet kemudian tekan tombol install dan tekan tombol Next lagi jika diminta dan diakhiri dengan tampilan seperti berikut :
kemudian tekan tombol finish yang menandai proses instalasi telah selesai.
Langkah 6 :
langkah terakhir adalah menguji hasil instalasi yang telah kita lakukan, silahkan buka command prompt anda dengan menekan tombol start ketik saja cmdkemudian ketik composer pada command prompt, jika berhasil tampilan nya akan seperti berikut :
Demikian langkah-langkah untuk melakukan instalasi composer,jika ada pertanyaan silahkan isi dikolom komentar.
Posting Komentar untuk "Mengenal Composer "