senäh

17senäh und so…

HTML/CSS/JS
15. Okt 2013
Kommentare: 0

npm

Kategorien: HTML/CSS/JS | 15. Okt 2013 | Kommentare: 0

Serie: Einführung in den MEAN Stack

npm ist ein Package Manager zum Verwalten von Modulen. Das heißt, er erleichtert die Installation und Deinstallation von Modulen und berücksichtigt dabei auch, ob ein bestimmtes Modul von einem anderen abhängt oder nicht. Er wird standardmäßig mit Node installiert. In diesem Artikel erkläre ich die Benutzung von npm.

Entgegen der weit verbreiteten Meinung npm wäre eine Abkürzung für Node Package Manager ist npm gar keine Abkürzung und besitzt auch keine 100%ig sinnvolle Bedeutung. Bei der Namenswahl als Befehl für die Kommandozeile wurde lediglich darauf geachtet, dass alle Buchstaben leicht mit der rechten Hand und ohne Großbuchstaben eingegeben werden können.

Im Terminal kann die aktuelle Version von npm überprüft werden:

$ npm -v
> 1.3.8

Obwohl über npm fast ausschließlich Node-Module verteilt werden, können auch beliebige andere Dateien mittels npm verwaltet werden.

Wie bereits gezeigt ist das Erstellen und Requiren von Node-Modulen sehr einfach. npm verbessert diese Eigenschaft von Node noch einmal: Module können einfach (de)installiert und Abhängigkeiten zwischen Modulen festgehalten werden. Die (De)Installation von Modulen kann global oder lokal erfolgen. In der Regel werden Module lokal pro Projekt installiert, da Projekte so mit unterschiedlichen Versionen eines Moduls arbeiten können. Die Faustregel lautet lediglich Node-Module, die als Command Line Tool verwendet werden, global zu installieren. Alle lokal installierten Module werden in einem Unterordner des derzeitigen Ordners namens node_modules gespeichert.

Die Installation eines Moduls erfolgt über einen einfachen Befehl (modulname muss durch einen echten Namen eines Moduls ersetzt werden):

$ npm install modulname

Durch den Zusatz -g nach install würde das Modul global installiert werden.

Durch uninstall kann das entsprechende Modul wieder deinstalliert werden:

$ npm uninstall modulname

Der gleiche Befehl kann mit dem Zusatz -g wieder für globale Module angewandt werden.

npm bietet eine Möglichkeit die Abhängigkeiten eines Projekts zu anderen Modulen deklarativ in einer JSON-Datei namens package.json festzuhalten. Für die folgenden einfachen Beispiele benötigen wir diese Funktion nicht. Wer an dieser Stelle bereits mehr zu dieser gängigen Praxis wissen möchte, der kann dies in der npm Dokumention unter https://npmjs.org/doc/files/package.json.html nachlesen. Sie ist vor allem für die Veröffentlichung von eigenen Node-Modulen bei npm relevant oder wenn man mit anderen Entwicklern zusammenarbeitet, damit jeder Entwickler alle Abhängigkeiten eines Moduls erhält. Sie kann außerdem Metadaten wie einen Link zum Repository oder Angaben zur Lizenz enthalten.

Da wir nun wissen, wie man externe Module mit npm installiert, können wir im nächsten Artikel unser erstes Node-Framework betrachten.

Autor: Pipo

...kommt ursprünglich aus der Designerecke, ist aber im Laufe seines Studiums in die Webentwicklung gestolpert. Kann sich seit dem nicht so richtig entscheiden wo er hingehört und wagt deswegen vielleicht die Flucht nach vorne in ein komplett neues Gebiet. Vielleicht Management? Niemand weiß es. Auch er nicht.