{"id":41149,"date":"2023-08-07T16:20:21","date_gmt":"2023-08-07T09:20:21","guid":{"rendered":"https:\/\/www.rumahweb.com\/journal\/?p=41149"},"modified":"2023-08-21T09:06:43","modified_gmt":"2023-08-21T02:06:43","slug":"apa-itu-composer-adalah","status":"publish","type":"post","link":"https:\/\/www.rumahweb.com\/journal\/apa-itu-composer-adalah\/","title":{"rendered":"Apa itu Composer? Definisi, Fungsi hingga Cara Instalasinya"},"content":{"rendered":"\n<p>Apakah Anda pernah mendengar istilah <em>composer<\/em>? Sebagian besar dari Anda mungkin tahu, bahwa <em>composer<\/em> adalah seorang dirigent dalam pertunjukan musik. Namun <em>composer <\/em>yang akan kami bahas tentu akan berbeda dengan itu. Lalu, apa itu <em>composer <\/em>pada konteks dunia <em>programming<\/em>?<\/p>\n\n\n\n\n\n<p>Dalam artikel ini, kami akan membahas secara detail tentang apa itu <em>composer<\/em>, fungsi, cara kerja hingga cara install di localhost. Berikut informasi selengkapnya. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Apa itu composer?<\/h2>\n\n\n\n<p><em>Composer <\/em>adalah sebuah tools manajemen dependensi untuk bahasa pemrograman PHP. Dalam konteks pemrograman, <em>Composer <\/em>adalah sebuah aplikasi yang digunakan untuk mengelola dan mengatur dependensi seperti library, <em><a href=\"https:\/\/blog.rumahweb.com\/framework-adalah\/\" target=\"_blank\" rel=\"noopener\" title=\"framework adalah\">framework<\/a><\/em>, atau paket lain yang diperlukan dalam proyek PHP.<\/p>\n\n\n\n<p>Dengan menggunakan Composer, Anda dapat dengan mudah mengelola dependensi proyek dengan mendefinisikan library atau paket yang diperlukan dalam berkas konfigurasi composer.json. Composer kemudian akan mengelola unduhan, instalasi, dan pembaruan dari dependensi-dependensi ini.<\/p>\n\n\n\n<p><em>Composer <\/em>pertama kali dikembangkan oleh Nils Adermann dan Jordi Boggiano di tahun 2011, dan terus dikembangkan sampai saat ini.<\/p>\n\n\n\n<p>Dalam beberapa tahun terakhir, <em>Composer <\/em>telah menjadi standar untuk manajemen dependensi dalam pengembangan PHP, dan banyak proyek besar yang mengandalkan tools ini untuk mengatur komponen-komponen perangkat lunak yang dikembangkan.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fungsi <em>Composer<\/em><\/h2>\n\n\n\n<p>Sesuai penjelasan diatas, fungsi utama composer adalah untuk mempermudah dalam proses coding di aplikasi. Fungsi lain dari penggunaan composer anda juga akan lebih mudah dalam maintenance dan pengambangan aplikasinya. Berikut beberapa fungsi dari composer<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Dependency manager<\/h3>\n\n\n\n<p>Dengan composer anda dapat melakukan pengelolaan pada dependency yang dibutuhkan. Composer akan melakukan install dan update sesuai dengan daftar library yang dicantumkan dalam file composer.json.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pengelolaan Versi<\/h3>\n\n\n\n<p>Composer memungkinkan anda untuk menggunakan versi tertentu dari library atau dependency yang diperlukan dengan catatan versi php beserta modulnya mendukung untuk versi library dan dependency yang akan digunakan.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Download otomatis<\/h3>\n\n\n\n<p>Composer memungkinkan anda untuk melakukan download otomatis sesuai dengan library yang dicantumkan pada file composer.json. Dengan fungsi ini anda tidak perlu menyimpan setiap versi dari library atau dependency yang diperlukan.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Integrasi Framework<\/h3>\n\n\n\n<p>Composer mendukung integrasi dengan beberapa framework yang banyak digunakan. Framework yang terintegrasi dengan composer diantaranya Laravel, YII, Symfony.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Custom Repository<\/h3>\n\n\n\n<p>Composer mendukung penggunaan custom repository. Fungsi ini memungkinkan anda untuk menggunakan repositori yang anda miliki dan tidak hanya menggunakan repository yang disediakan composer seperti packagist.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kenapa <em>Dependency <\/em>Manager dibutuhkan?<\/h2>\n\n\n\n<p><em>Composer <\/em>erat hubungannya dengan dependency. Hal ini dikarenakan <em>composer<\/em> merupakan salah satu sarana untuk melakukan manage dependency atau bisa disebut dependency manager. <\/p>\n\n\n\n<p>Depedency manager dibutuhkan untuk melakukan pengembangan aplikasi, karena dengan menggunakan dependecy manager anda tidak harus membuat project anda dari nol.<\/p>\n\n\n\n<p>Dengan menggunakan dependency manager nantinya anda cukup melakukan installasi pada template dependency yang anda perlukan. Kemudian selanjutnya anda cukup melakukan editing pada template dependency nyang sudah diinstall sesuai dengan kebutuhan dari aplikasi yang sedang anda develop.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cara kerja <em>Composer<\/em><\/h2>\n\n\n\n<p>Agar <em>composer<\/em> dapat bekerja, <em>composer<\/em> membutuhkan resource dari library yang akan di download atau lebih dikenal dengan repository. Salah satu repository yang banyak digunakan yaitu <a href=\"https:\/\/packagist.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">packagist<\/a>. Dalam repository tersebut akan tersimpan library beserta dependency yang diperlukan. Berikut cara kerja dari composer :<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. Mendefinisikan Dependensi<\/h3>\n\n\n\n<p>Sebelum menjalankan composer, anda perlu mendefinisikan library yang akan diinstall. Daftar library yang akan diinstall silahkan diletakan dalam file txt dengan nama file composer.json.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. Paket dari Packagist<\/h3>\n\n\n\n<p>Sesuai informasi diatas, composer menggunakan repository packagist. Ketika anda menjalankan composer install atau composer update, maka composer akan mencari paket dari library yang ter-list di file composer.json di repository packagist.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Instalasi Dependensi<\/h3>\n\n\n\n<p>Setelah dependensi yang dibutuhkan dapat ditemukan, maka composer selanjutnya akan melakukan download file-file dependensi ke dalam folder aplikasi yang dibuat. Nantinya file dependensi yang sudah di download akan tersimpan di dalam folder vendor.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. Autoload<\/h3>\n\n\n\n<p>Autoload akan membuat dependensi yang sudah terinstall akan otomatis dapat dijalankan tanpa harus menjalankan perintah seperti &#8220;require&#8221;.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. Manajemen Versi<\/h3>\n\n\n\n<p>Dengan manajemen versi, composer akan melakukan instalasi dependensi atau paket yang dibutuhkan sesuai dengan versi yang didefinisikan pada file composer.json. Dengan adanya manajemen versi ini akan memastikan versi yang diinstall kompatibel dengan aplikasi yang anda buat.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6. Custom repository<\/h3>\n\n\n\n<p>Composer juga mendukung custom repository, sehingga anda tidak hanya bisa menggunakan repository dari packagist. Dengan custom repository, anda dapat juga menggunakan source repository selain packagist, atau bahkan bisa menggunakan repository yang anda miliki.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">7. Update dependensi<\/h3>\n\n\n\n<p>Composer juga mempermudah anda dalam melakukan pengembangan pada aplikasi yang anda buat. Anda dapat dengan mudah untuk mengupdate versi library atau dependensi yang anda gunakan hanya cukup dengan menjalankan perintah &#8220;composer update&#8221;.<\/p>\n\n\n\n<p>Berikut contoh gambar saat <em>composer<\/em> dijalankan:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"534\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-1024x534.png\" alt=\"eksekusi composer\" class=\"wp-image-41150\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-1024x534.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-300x156.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-768x401.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-370x193.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-270x141.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-570x297.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer-740x386.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/eksekusi-composer.png 1344w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Cara install <em>Composer<\/em><\/h2>\n\n\n\n<p>Kami akan menjelaskan cara install <em>composer <\/em>di localhost maupun di server VPS. Berikut informasi selengkapnya:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Install Composer di Localhost<\/h3>\n\n\n\n<p>Sebelum Anda melakukan instalasi <em>composer <\/em>di Localhost, pastikan Anda telah menginstall aplikasi local web server seperti XAMPP, WAMP, EasyPHP hingga AMPPS. <\/p>\n\n\n\n<p>Setelah persiapan lengkap, selanjutnya Anda bisa melakukan install <em>composer <\/em>di localhost yang detailnya bisa anda pelajari pada artikel berikut ini: <a href=\"https:\/\/www.rumahweb.com\/journal\/cara-install-composer-di-localhost\/\" title=\"cara install composer localhost\">cara install composer localhost<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Install Composer di AlmaLinux<\/h3>\n\n\n\n<p>Panduan install composer di AlmaLinux akan kami publikasi melalui artikel terpisah. Saat ini masih dalam proses riset.<\/p>\n\n\n\n<p>Demikian artikel kami tentang apa itu <em>composer<\/em>, fungsi hingga cara instalasinya. Semoga dapat menambah wawasan dan membantu Anda dalam mengembangkan aplikasi berbasis website.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Apakah Anda pernah mendengar istilah composer? Sebagian besar dari Anda mungkin tahu, bahwa composer adalah seorang dirigent dalam pertunjukan musik. Namun composer yang akan kami bahas tentu akan berbeda dengan itu. Lalu, apa itu composer pada konteks dunia programming? Dalam artikel ini, kami akan membahas secara detail tentang apa itu composer, fungsi, cara kerja hingga [&hellip;]<\/p>\n","protected":false},"author":322,"featured_media":41228,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[2],"tags":[1677,798,45],"class_list":{"0":"post-41149","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-artikel-tutorial","8":"tag-composer","9":"tag-framework","10":"tag-php"},"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2023\/08\/Apa-Itu-Composer-Adalah.png","jetpack_shortlink":"https:\/\/wp.me\/p8n3G7-aHH","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/41149","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/users\/322"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/comments?post=41149"}],"version-history":[{"count":0,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/41149\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media\/41228"}],"wp:attachment":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media?parent=41149"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/categories?post=41149"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/tags?post=41149"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}