Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya.

Salah satu fitur terbaik dari Node adalah pengelola paket. Ada banyak cara berbeda untuk menginstal dan mengelola paket node. Di sini, kita akan melihat pro dan kontra menggunakan satu pengelola paket atau menggunakan lebih dari satu pengelola paket, dan beberapa cara terbaik untuk menggunakannya bersama-sama.

Apa manajer paket yang Anda tanyakan? Baca terus untuk mencari tahu.

Apa itu Manajer Paket?

Dalam dunia pengembangan perangkat lunak, dependensi adalah hal yang Anda perlukan untuk menjalankan proyek Anda. Mereka seperti bahan dalam resep: tanpanya, tidak ada yang terjadi.

Misalnya, jika Anda menulis aplikasi yang menggunakan JavaScript, dan ingin mengakses beberapa fungsi dari perpustakaan yang disebut jQuery (yang pernah digunakan banyak situs web), maka jQuery akan menjadi salah satu dependensi Anda. Anda perlu menginstalnya sehingga ketika seseorang mengunjungi situs Anda, mereka dapat melihat animasi keren atau interaksi yang Anda buat dengannya!

Manajer paket membantu mengelola hubungan antar proyek ini dengan mengelola dependensi untuk kami, jadi kami tidak perlu khawatir mengunduhnya sendiri secara manual setiap saat kita menginginkan sesuatu yang baru ditambahkan atau diperbarui—mereka juga memastikan semuanya bekerja sama dengan baik dan berjalan lancar setelah diinstal (yang terkadang lebih mudah diucapkan daripada Selesai).

Node Datang Pra-Paket Dengan Manajer Paket Disebut NPM

NPM adalah pengelola paket default, dan karena itu, NPM dibangun ke dalam runtime node. Anda dapat menggunakan NPM untuk menginstal paket dari GitHub atau NPM secara langsung. Anda juga dapat menerbitkan paket Anda ke situs ini sehingga orang lain dapat menginstalnya menggunakan versi NPM mereka.

NPM tidak hanya digunakan untuk menginstal paket; itu juga menangani resolusi ketergantungan dan konflik versi antara dua atau lebih perpustakaan atau modul yang diperlukan di basis kode aplikasi Anda.

Artinya jika ada beberapa versi dari sesuatu yang serupa Ekspres berjalan di server Anda pada waktu tertentu, NPM akan memastikan bahwa setiap instance mendapatkan apa yang dibutuhkannya tanpa bertentangan contoh lain melakukan pekerjaan serupa--dan semuanya tanpa mengharuskan Anda melakukan sesuatu yang istimewa di luar itu panggilan memerlukan() pada objek saat dibutuhkan!

NPM adalah alat yang sangat kuat, dan mudah untuk memulainya. Tetapi jika Anda baru mengenal Node dan JavaScript, mungkin sulit untuk mengetahui alat apa yang tersedia untuk Anda gunakan—dan mana yang terbaik untuk proyek tertentu.

Masalah utama dengan NPM adalah lambat untuk menginstal paket. Ini bukan masalah besar jika Anda hanya menjalankan satu atau dua skrip sesekali, tetapi ini bisa luar biasa membuat frustrasi jika Anda mencoba membuat seluruh aplikasi yang menggunakan lusinan pustaka berbeda dan peralatan.

Benang dan PNPM Lebih Cepat Dari NPM

Yarn adalah alternatif NPM yang aman dan andal yang menggunakan file kunci untuk mencegah penimpaan yang tidak disengaja dan memastikan dependensi Anda diselesaikan dengan benar saat menginstal paket.

Ini juga memiliki waktu penginstalan yang lebih cepat daripada NPM, yang membuatnya sangat berguna jika Anda bekerja dengan proyek besar yang memiliki banyak modul dengan banyak ketergantungan.

PNPM adalah alternatif untuk Yarn dan NPM, tetapi belum sepopuler itu karena tidak memiliki beberapa fitur yang ditemukan di keduanya (seperti file kunci). Namun, pengembangnya mengklaim bahwa PNPM dapat menginstal paket hingga empat kali lebih cepat daripada Yarn atau NPM berkat sifatnya yang ringan; ini berarti lebih sedikit penggunaan ruang disk di komputer Anda juga!

Jika Anda sedang membangun sebuah proyek yang hanya membutuhkan beberapa dependensi, maka Yarn atau NPM mungkin sudah cukup. Namun, jika Anda bekerja dengan proyek besar dengan banyak modul dan dependensi, maka PNPM bisa menjadi pilihan yang lebih baik untuk Anda.

Keuntungan Menggunakan Beberapa Manajer Paket

Manajer paket tunggal hanya dapat menangani satu versi dari setiap perpustakaan yang diberikan pada satu waktu. Jika Anda ingin menggunakan dua versi berbeda dari pustaka yang sama untuk proyek lain atau di lingkungan yang berbeda (misalnya, versi produksi vs. pengembangan), maka Anda memerlukan dua paket terpisah yang diinstal pada sistem Anda.

Kredit Gambar: PNPM

Ini dapat menyebabkan konflik jika kedua paket mencoba memperbarui versi ketergantungan yang sama pada saat yang sama. Menggunakan banyak manajer paket berarti Anda memiliki kontrol lebih besar atas dependensi mana yang diinstal dan di mana yang membantu menghindari konflik semacam ini.

Manfaat lainnya adalah saat menggunakan banyak pengelola paket, masing-masing akan menyediakan serangkaian fitur uniknya sendiri. Beberapa mungkin lebih cepat dari yang lain; beberapa mungkin memiliki kemampuan manajemen ketergantungan yang lebih baik; yang lain mungkin lebih cocok untuk mengembangkan aplikasi dalam kerangka tertentu seperti ReactJS atau VueJS dll...

Terakhir, menggunakan beberapa pengelola paket dapat membantu meningkatkan produktivitas pengembang Anda dengan mengurangi waktu yang dihabiskan untuk mencari dan menginstal dependensi. Ini karena setiap pengelola paket akan dirancang dengan mempertimbangkan serangkaian kasus penggunaan tertentu (misalnya, kecepatan vs. keamanan vs. manajemen ketergantungan, dll...).

Gunakan Beberapa Manajer Paket dengan Menginstalnya Secara Global

Menggunakan baris perintah, Anda dapat menentukan pengelola paket mana yang ingin Anda gunakan untuk proyek tertentu. Siapkan beberapa pengelola paket di komputer Anda:

  • NPM dikemas dengan Node. Ini akan memungkinkan Anda untuk menginstal paket lain (dan manajer paket) dari baris perintah dan mengelola dependensi di semua proyek Anda dengan NPM. Ini juga membantu jika Anda ingin menjalankan skrip NPM di browser (mis., Webpack), karena browser tidak dilengkapi dengan NPM yang sudah diinstal sebelumnya!
  • Instal Yarn secara global juga menggunakan NPM. Ini adalah opsi populer lainnya untuk mengelola dependensi dalam proyek JavaScript; itu memiliki beberapa keunggulan dibandingkan NPM yang mungkin membuatnya lebih disukai untuk jenis proyek atau tim tertentu
  • Terakhir, instal PNPM. Manajer paket ini adalah bagian dari NPM yang dirancang agar lebih cepat dan lebih stabil. Ini juga memiliki beberapa fitur tambahan yang mungkin berguna untuk beberapa jenis proyek, seperti dukungan untuk dependensi dari GitHub.

Perhatikan bahwa penginstalan global berarti paket yang dipilih akan tersedia untuk seluruh sistem Anda (Anda dapat mengakses program di mana saja melalui baris perintah), sedangkan instalasi lokal hanya dapat diakses dengan bekerja saat ini direktori.

Contoh Dunia Nyata Bagaimana Anda Dapat Menggunakan Banyak Manajer Paket

Lihat kegunaan ini:

1. Benang dan NPM Dapat Digunakan Bersama (mis. buat-reaksi-aplikasi)

Ini berguna saat Anda ingin memanfaatkan kecepatan dan efisiensi Yarn sambil tetap menjaga kompatibilitas dengan paket NPM. Jika Anda memerlukan pustaka versi terbaru yang belum diperbarui untuk kompatibilitas dengan Yarn, atau jika ada alasan lain mengapa tim Anda lebih suka tetap menggunakan NPM meskipun kecepatannya lebih lambat atau set fitur terbatas, maka ini mungkin bekerja dengan baik untuk Anda proyek. Ini juga membantu menghindari dua pohon ketergantungan terpisah dalam pengaturan mono repo Anda!

2. Menggunakan Yarn Untuk Paket Global dan PNPM untuk Instalasi Lokal

Meskipun PNPM adalah pengelola paket tercepat, namun sulit digunakan untuk paket yang terinstal secara global. Ini karena menggunakan struktur file yang berbeda yang dapat menyebabkan masalah kompatibilitas dengan program seperti Visual Studio Code. Di sinilah Benang masuk. Anda dapat menggunakannya untuk paket yang diinstal secara global, dan PNPM untuk instalasi lokal. Solusi ini adalah cara yang baik untuk mendapatkan keuntungan dari kedua pengelola paket tanpa harus mengubah alur kerja Anda terlalu banyak. Dengan pengaturan ini—jika Anda ingin menjadi liar—Anda dapat menghapus NPM dari sistem Anda sepenuhnya (tetapi selalu menyenangkan memiliki NPM sebagai cadangan).

3. Menggunakan PNPM Dengan NPM sebagai Fallback

Ini adalah opsi yang baik untuk dipertimbangkan jika Anda ingin menggunakan PNPM, tetapi tidak ingin semua pengembang Anda harus mempelajari alat baru. Ini memungkinkan mereka untuk terus bekerja dengan NPM sampai mereka merasa nyaman dengan PNPM dan membutuhkannya untuk pekerjaan mereka.

Menggunakan Banyak Manajer Paket Membuat Segalanya Lebih Mudah

Anda dapat menggunakan beberapa manajer paket. Anda dapat menginstalnya secara global atau lokal, dan jika Anda ingin menentukan pengelola paket mana yang harus digunakan untuk proyek tertentu, cukup gunakan baris perintah!

Jika Anda ingin menginstal beberapa pengelola paket di sistem Anda, pastikan Anda menggunakan versi Node.js yang sama.

Sebagai kesimpulan, menurut kami Anda sebaiknya menggunakan lebih dari satu pengelola paket. Ini cara yang bagus untuk memulai dengan Node dan juga mempelajari beberapa alat baru jika Anda sudah terbiasa dengan NPM. Jika Anda belum menginstal Node, pengaturannya mudah di Windows.