Νήματα plug'n'play

Το npm είναι ο τυπικός διαχειριστής πακέτων για το Node.js. Ωστόσο, το Facebook αναπτύσσει εδώ και αρκετό καιρό μια εναλλακτική λύση διαχείρισης πακέτων που ονομάζεται Yarn . Το Yarn φαίνεται να εξαφανίζεται σιγά σιγά από το README του GitHub ως η προεπιλεγμένη λύση και τα στατιστικά στοιχεία στον επίσημο ιστότοπο δείχνουν ότι μόνο ένα κλάσμα των εγκαταστάσεων πακέτων εκτελούνται με το Yarn. Παρ 'όλα αυτά, αξίζει να ρίξετε μια ματιά πέρα από τα προφανή.


Το Yarn είναι πλήρως συμβατό με τα υπάρχοντα αρχεία package.json, επομένως μπορείτε εύκολα να χρησιμοποιήσετε και τις δύο λύσεις σε υπάρχοντα έργα. Οι εντολές για τις δύο λύσεις διαφέρουν μόνο ελαφρώς. Παρακάτω παρουσιάζεται μια σύγκριση των πιο σημαντικών εντολών.:

ΠεριγραφήnpmΝήμα
Αρχικοποίηση npm initνήματα init
Εκσυγχρονίζωεγκατάσταση npm -g npmαυτο-ενημέρωση νήματος
Εγκατάσταση πακέτουεγκατάσταση npm
- αποθήκευση [όνομα]
νήματα προσθήκη [όνομα]
Εγκατάσταση πακέτουεγκατάσταση npm
--save-dev [όνομα]
νήματα
--dev [όνομα]
Εγκαταστήστε πακέτο παγκοσμίωςεγκατάσταση npm -g [όνομα]νήματα παγκόσμια προσθήκη [όνομα]
Εγκαταστήστε όλα τα πακέταεγκατάσταση npmεγκατάσταση νήματος
Ενημέρωση όλων των πακέτωνενημέρωση npmαναβάθμιση νημάτων
Απεγκαταστήστε το πακέτοnpm αφαίρεση [όνομα]νήματα αφαίρεση [όνομα]

Το Yarn σχεδιάστηκε για να αντιμετωπίσει ορισμένες από τις αδυναμίες του npm. Η πιο προφανής διαφορά είναι η βελτιωμένη απόδοσή του: οι σταδιακές εγκαταστάσεις, η πολυνηματική λειτουργία και η τελευταία λειτουργία-κλειδί , το Plug'n'Play (PNP), αυξάνουν δραματικά την απόδοση. Το Plug'n'Play εξαλείφει την ανάγκη για έναν φάκελο `node_modules` που βασίζεται σε έργα, ο οποίος μπορεί συχνά να αυξηθεί σε αστρονομικές αναλογίες σε αριθμό αρχείων. Περισσότερες πληροφορίες μπορείτε να βρείτε στην επίσημη λευκή βίβλο του Plug'n'Play . Θα εγκαταστήσουμε το eslint μία φορά με το npm και στη συνέχεια με το Yarn, το καθένα με προθερμασμένη προσωρινή μνήμη, για να δείξουμε με σαφήνεια τη διαφορά ταχύτητας (6x!).:

npm 6.5.0
Νήματα 1.12.3
Πίσω