KRATKA ISTORIJA PACKAGE MANAGERA

Približili smo se kraju prvog ciklusa naših predavanja u Sipodu.

Ovog četvrtka, naš kolega Dušan je govorio o istoriji package managera i razlikama među njima.

Za one koji ne znaju šta su package manageri, ukratko to su softverski alati za automatizaciju procesa instalacije, nadogradnje, konfiguracije i brisanja kompjuterskih programa za operativne sisteme na jedinstven i konzistentan način. Primarna funkcija svakog package managera jeste instalacija određenog paketa iz globalnog registra u lokalno okruženje.

Zahvaljujući package managerima nema više potrebe za manuelnom instalacijom i ažuriranjem softvera, što je posebno korisno za velike kompanije i preduzeća koja koriste Linux operativni sistem.

Bez package managera korisnici bi morali da  instaliraju i ažuriraju sve zavisne objekte i omoguće konfiguraciju za svaki deo softvera ponaosob.

NPM

Node.js package manager (npm)  kreiran je za JavaScript programski jezik. Node.js package manager se sastoji klijentske konzole koja se zove i npm i onlajn baze podataka javnih i plaćenih privatnih paketa koji se zovu npm registar.  Ovim registrima se pristupa preko klijentske konzole dok se dostupni paketi mogu pretraživati na npm veb sajtu.

YARN

Yarn je novi package manager koji zamenjuje postojeći radni proces za npm klijentsku konzolu, a istovremeno je kompatibilan sa npm registrom. Iako ima iste funkcije kao i postojeći radni procesi, Yarn radi pouzdanije, bezbednije i brže. Yarn omogućava inženjerima da brže i bezbednije koriste zajednički kod i fokusiraju se izgradnju novih proizvoda i funkcija.

Kada npm ili Yarn treba da instalira paket, on obavlja niz zadataka. U npm ovi zadaci se izvršavaju po paketu i sekvencijalno, što znači da će sačekati da se paket u potpunosti instalira pre nego što pređe na sledeći. Yarn izvršava ove zadatke paralelno, što poboljšava performanse.

Približno, Yarn je 4,7 puta brži od npm. Razlika u brzini  može zavisiti od količine paketa koji se instaliraju, ali je Yarn definitivno u svakom slučaju brži od npm.