Ако сте използвали Javascrip{filter}t, вероятно сте чували за npm. npm улеснява разработчиците на Javascrip{filter}t да споделят кода, който създават, за да решат конкретен проблем, и позволяват на други разработчици да го използват повторно в собствените си приложения.
След като разчиташ на код от други разработчици, NPM лесно може да провери дали са направили някакви актуализации и да ги изтегли, когато го направят.
Тези многократно използваеми кодове се наричат пакети или модули. Пакетът е просто директория, съдържаща един или повече файла, и файл, наречен "package.json", който съдържа метаданни за пакета. Типично приложение, като уебсайт, ще зависи от десетки или стотици пакети. Тези пакети обикновено са малки, а основната идея е да създадете малка част, която решава даден проблем добре. Това ви позволява да изграждате по-големи, персонализирани решения от тези малки градивни елементи.
Това има много предимства, позволявайки на вашия екип да привлече професионалисти извън организацията, като получава опаковки от хора, които се фокусират върху конкретна проблемна област. Дори без повторно използване на код извън организацията, използването на този модулен подход може да помогне на вашия екип да работи по-добре заедно и да използва кода в различни проекти.
Можете да намерите пакети, които да ви помогнат да създадете приложението си, като разгледате уебсайта на NPM. Когато разглеждате уебсайта, ще намерите много Node модули. NPM започна като мениджър на пакети за възли, така че ще намерите много модули, които могат да се използват от страна на сървъра. Има и много команди за добавяне на пакети, които можете да използвате в командния ред. Ще намерите и пакети, които можете да използвате на фронтенда.
NPM се състои от три различни части: уебсайт, регистър и CLI. Уебсайтът е основният инструмент за потребителите да откриват пакети, регистърът е голяма база данни с информация за пакетите, а CLI е начинът, по който разработчиците публикуват пакетите си в регистъра или изтеглят пакети, които желаят да инсталират.
NPM е начин за повторно използване на код от други разработчици, както и начин за споделяне на код с други, и е лесен за управление на различни версии на кода. |