Каква е разликата между библиотека и пакет?


Отговор 1:

tldr; Те са повече или по-малко едно и също нещо.

Библиотеката обикновено е парче кодове за многократна употреба, което може да искате да включите в други програми.

Често пакетът е библиотека, която е подготвена по някакъв начин за инсталиране с помощта на мениджър на пакети, например rubygems или npm.

Някои езици за програмиране се отнасят до техники за кодове в пространството на имена в рамките на дадена програма като пакети, например Java в други като техниката за разделяне на имена на езика Go всъщност е същият механизъм, използван за определяне на библиотеки.

  • Библиотеката винаги е част от кода, който може да се използва повторно. Пакетът понякога е механизъм за разпространение на библиотеки. Някои езици за програмиране се отнасят към пространствата с имена като пакети, други се отнасят към тях като модули (модул). Някои езици за програмиране използват техниката си за разделяне на имена, за да осигурят механизъм за преразпределяне на код (напр. Go) Така че като цяло линиите между това, което представлява пакет и библиотека, са доста размити и точното определение на всяка дума вероятно зависи от езика на програмиране, който използвате.

Отговор 2:

Според моите знания ще се опитам да обясня какво знам за двете.

За опростяване ще използвам примери.

Стандартна опаковка обикновено е за определена задача. Добър пример е пакетът nodemon за NodeJs / Express.

Пакетът nodemon автоматично рестартира сървъра след запазване на промените, така че не е нужно да преминавате през процеса отново. Ето какво прави един пакет: помага ви с конкретни задачи по време на процес на разработка.

Езикът, на който е написан пакетът, може да бъде същият, на който се изпълнява или би могъл да бъде в комбинация с други езици.

Сега за библиотеката добър пример е jQuery. Сега, когато мислите за jQuery, знаете, че има много функции, за които можете да го използвате. Това е повече или по-малко група от функции на JavaScript, обединени в един файл, за да се ускори при кодирането в Javascript.

Това прави библиотеката: групира функции на език в един файл и след това ви дава персонализирани функции за повикване, което прави процеса на кодиране по-бърз за вас.

Надявам се, че това помага.