© saicle/Shutterstock.com
PHP Magazin
Node.js abseits des Webservers

Node.js abseits des Webservers

Mittlerweile gibt es kaum einen Webentwickler, der nicht schon zumindest von Node.js gehört hat. Die meisten Personen bringen mit serverseitigem JavaScript einen leichtgewichtigen Webserver in Verbindung, der in weniger als zehn Zeilen implementiert ist. Die Einsatzgebiete von JavaScript abseits des Browsers und sogar abseits jeglicher Webtechnologien sind jedoch vielfältig. Dieser Artikel zeigt, wie sich mit Node.js mächtige Kommandozeilenwerkzeuge auf Basis von JavaScript umsetzen lassen.

Sebastian Springer


Video: Backbone, Socket.IO und Node.js im Einsatz

Beschäftigt man sich mehr mit dem Thema Node.js, wird deutlich, dass es sich dabei um eine Sammlung von Bibliotheken um die JavaScript Engine V8 von Google handelt. Dieser Kern wird um einige Module erweitert, die den Funktionsumfang von Node.js um häufig benötigte Features bereichern. Hierunter fallen im einfachsten Fall Schnittstellen zum Betriebssystem, über die sich auslesen lässt, auf welchem System Node.js ausgeführt wird, wie viel Speicher und wie viele Netzwerkkarten zur Verfügung stehen. Es gibt allerdings auch komplexere Module, die zum Beispiel den Zugriff auf das Dateisystem des Rechners ermöglichen. Dank dieser Module kann ein Entwickler vollwertige Applikationen auf einem Server entwickeln.

HinweisDer Quellcode dieses Beispiels steht auf GitHub unter https://github.com/sspringer82/cloc2sloc zur Verfügung. Das Paket liegt auf npmjs.org unter dem Namen „cloc2sloc“.

Neben diesem Kern besteht die Node.js-Distribution aus dem Node Package Manager, kurz npm. Über den npm stehen mehrere tausend weitere Module zur Verfügung. Diese sind nicht direkter Bestandteil von ­Node.js, ergänzen den Funktionsumfang allerdings weiter. „npm“ bietet beispielsweise Frameworks, die es einem Entwickler ermöglichen, eine vollwertige Webapplikation zu entwickeln oder Clients für verschiedene Datenbanken und vieles mehr.

Verwaltet werden die npm-Pakete in einem zentralen Repository, das auf npmjs.org zu finden ist. Mithilfe des npm-Kommandozeilenwerkzeugs lässt sich dieses Repository durchsuchen, Pakete daraus installieren oder bereits installierte Pakete aktualisieren. „npm“ kann allerdings auch dazu verwendet werden, um installierte Pakete wieder vom System zu entfernen. Dabei hilft der npm auch beim Auflösen von Abhängigkeiten bei der Installation eines Pakets. Wird also zur Funktionsfähigkeit eines Pakets ein anderes benötigt, wird es automatisch aus dem Repository heruntergeladen und ebenfalls installiert.

„npm“ stellt jedoch nicht nur Bibliotheken zur Integration in eigene Applikationen zur Verfügung, sondern ermöglicht es auch, unabhängige Pakete zu installieren. Dadurch können Befehle direkt auf der Kommandozeile abgesetzt werden. Konkrete Beispiele hierfür sind Grunt, ein Build-Tool für JavaScript-Projekte, oder LESS, ein Compiler für Cascading Style Sheets.

Zur Installation von Paketen stehen grundsätzlich zwei Optionen zur Verfügung. Die Pakete können entweder lokal für das aktuelle Projekt oder global fü...

PHP Magazin
Node.js abseits des Webservers

Node.js abseits des Webservers

Mittlerweile gibt es kaum einen Webentwickler, der nicht schon zumindest von Node.js gehört hat. Die meisten Personen bringen mit serverseitigem JavaScript einen leichtgewichtigen Webserver in Verbindung, der in weniger als zehn Zeilen implementiert ist. Die Einsatzgebiete von JavaScript abseits des Browsers und sogar abseits jeglicher Webtechnologien sind jedoch vielfältig. Dieser Artikel zeigt, wie sich mit Node.js mächtige Kommandozeilenwerkzeuge auf Basis von JavaScript umsetzen lassen.

Sebastian Springer


Video: Backbone, Socket.IO und Node.js im Einsatz

Beschäftigt man sich mehr mit dem Thema Node.js, wird deutlich, dass es sich dabei um eine Sammlung von Bibliotheken um die JavaScript Engine V8 von Google handelt. Dieser Kern wird um einige Module erweitert, die den Funktionsumfang von Node.js um häufig benötigte Features bereichern. Hierunter fallen im einfachsten Fall Schnittstellen zum Betriebssystem, über die sich auslesen lässt, auf welchem System Node.js ausgeführt wird, wie viel Speicher und wie viele Netzwerkkarten zur Verfügung stehen. Es gibt allerdings auch komplexere Module, die zum Beispiel den Zugriff auf das Dateisystem des Rechners ermöglichen. Dank dieser Module kann ein Entwickler vollwertige Applikationen auf einem Server entwickeln.

HinweisDer Quellcode dieses Beispiels steht auf GitHub unter https://github.com/sspringer82/cloc2sloc zur Verfügung. Das Paket liegt auf npmjs.org unter dem Namen „cloc2sloc“.

Neben diesem Kern besteht die Node.js-Distribution aus dem Node Package Manager, kurz npm. Über den npm stehen mehrere tausend weitere Module zur Verfügung. Diese sind nicht direkter Bestandteil von ­Node.js, ergänzen den Funktionsumfang allerdings weiter. „npm“ bietet beispielsweise Frameworks, die es einem Entwickler ermöglichen, eine vollwertige Webapplikation zu entwickeln oder Clients für verschiedene Datenbanken und vieles mehr.

Verwaltet werden die npm-Pakete in einem zentralen Repository, das auf npmjs.org zu finden ist. Mithilfe des npm-Kommandozeilenwerkzeugs lässt sich dieses Repository durchsuchen, Pakete daraus installieren oder bereits installierte Pakete aktualisieren. „npm“ kann allerdings auch dazu verwendet werden, um installierte Pakete wieder vom System zu entfernen. Dabei hilft der npm auch beim Auflösen von Abhängigkeiten bei der Installation eines Pakets. Wird also zur Funktionsfähigkeit eines Pakets ein anderes benötigt, wird es automatisch aus dem Repository heruntergeladen und ebenfalls installiert.

„npm“ stellt jedoch nicht nur Bibliotheken zur Integration in eigene Applikationen zur Verfügung, sondern ermöglicht es auch, unabhängige Pakete zu installieren. Dadurch können Befehle direkt auf der Kommandozeile abgesetzt werden. Konkrete Beispiele hierfür sind Grunt, ein Build-Tool für JavaScript-Projekte, oder LESS, ein Compiler für Cascading Style Sheets.

Zur Installation von Paketen stehen grundsätzlich zwei Optionen zur Verfügung. Die Pakete können entweder lokal für das aktuelle Projekt oder global fü...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang