Node.js & Co. (iX Edition) - Skalierbare, hochperformante und echtzeitfähige Webanwendungen professionell in JavaScript entwickeln

Node.js & Co. (iX Edition) - Skalierbare, hochperformante und echtzeitfähige Webanwendungen professionell in JavaScript entwickeln

von: Golo Roden

dpunkt, 2012

ISBN: 9783864911897

Sprache: Deutsch

334 Seiten, Download: 17631 KB

 
Format:  EPUB, PDF, auch als Online-Lesen

geeignet für: geeignet für alle DRM-fähigen eReader geeignet für alle DRM-fähigen eReader Apple iPad, Android Tablet PC's Apple iPod touch, iPhone und Android Smartphones Online-Lesen PC, MAC, Laptop


 

eBook anfordern

Mehr zum Inhalt

Node.js & Co. (iX Edition) - Skalierbare, hochperformante und echtzeitfähige Webanwendungen professionell in JavaScript entwickeln



Vorwort


Node.js ist ein Framework zur Entwicklung von serverseitigen Webanwendungen in JavaScript. Auf diese Weise wird Webentwicklern die einheitliche Verwendung von JavaScript für Client und Server ermöglicht. Node.js wurde von Ryan Dahl entwickelt und erstmals im Jahr 2009 veröffentlicht.

Skalierbar Einen besonderen Schwerpunkt legt Node.js auf die einfache und zugleich äußerst hohe Skalierbarkeit von Webanwendungen, um dem ständig wachsenden Bedarf an zahlreichen gleichzeitigen und dauerhaften Verbindungen gerecht zu werden.

Hochperformant Da Node.js auf Google V8, dem derzeit schnellsten verfügbaren JavaScript-Compiler basiert, verfügen die entwickelten Webanwendungen über eine ausgesprochen hohe Performance. Der funktionale Ansatz von JavaScript ermöglicht darüber hinaus eine ausgezeichnete Parallelisierung der Ausführung.

Echtzeitfähig Zudem können auch echtzeitfähige Webanwendungen problemlos entwickelt werden, da Websockets und Streaming fundamentale Konzepte in Node.js sind. Mit wenigen Zeilen JavaScript-Code können deshalb leistungsfähige und moderne Webanwendungen erstellt werden, die Desktopanwendungen in keiner Weise nachstehen.

Plattformunabhängig Die Entwicklung und auch die Ausführung erfolgen dabei vollkommen plattformunabhängig: Node.js steht ohne zeitaufwendige Installation für Linux, Mac OS X und Windows zur Verfügung und kann mit jedem beliebigen Texteditor und zahlreichen integrierten Entwicklungsumgebungen verwendet werden.

Unterstützung Unterstützt wird Node.js von der Firma Joyent und einer ausgesprochen engagierten Community, die innerhalb von zwei Jahren ein umfassendes Ökosystem mit annähernd 10.000 ergänzenden Komponenten für nahezu jeden Anwendungsfall geschaffen haben, die stetig erweitert und ergänzt werden.

Node.js & Co. Das vorliegende Buch führt in die Welt von Node.js & Co. ein und vermittelt außer den benötigten Technologien, Kenntnissen und Fähigkeiten auch einen Überblick über das umfangreiche Ökosystem, um das Fundament für die professionelle Entwicklung von modernen Webanwendungen zu legen.

An wen richtet sich dieses Buch?


Node.js & Co. richtet sich an alle Webentwickler, die JavaScript nicht nur im Webbrowser, sondern auch auf dem Server verwenden wollen, und die bereits über Vorkenntnisse in dieser Sprache und potenziell in anderen Webframeworks verfügen.

Ziel dieses Buches Das Ziel des vorliegenden Buches ist, diesen Webentwicklern ein umfassendes Fundament in Node.js und den dazu erforderlichen Technologien, Kenntnissen und Fähigkeiten zu vermitteln. Außer der einführenden Theorie wird dabei stets auch die praktische Implementierung ausführlich beschrieben.

Zusätzlich wird ein Überblick über das Ökosystem und einige der wichtigsten Komponenten für Node.js gegeben. Dadurch wird die Fähigkeit vermittelt, sich innerhalb des äußerst umfangreichen und zumindest zu Beginn ausgesprochen unübersichtlichen Ökoystems eigenständig zurechtzufinden.

JavaScript als Basis Da dieses Buch keine Einführung in JavaScript darstellt, sei derjenige, der noch keinerlei Erfahrung mit der Webentwicklung im Allgemeinen und JavaScript im Speziellen sammeln konnte, zunächst an andere Autoren verwiesen.

Besonders hervorzuheben als Einführung und Vertiefung in die Sprache JavaScript sind Die Kunst der JavaScript-Programmierung von Marijn Haverbeke1 und JavaScript: The Good Parts von Douglas Crockford2.

Wie ist das Buch strukturiert?


Das vorliegende Buch gliedert sich prinzipiell in zwei voneinander unabhängige Teile:

Node.js ... Teil 1, Node.js ...: Der erste Teil befasst sich mit Node.js an sich. Nach der Installation und Konfiguration von Node.js werden die ersten Schritte erläutert, das Modulsystem erklärt und die Anwendung npm zum Verwalten der Module vorgestellt. Außerdem werden der Umgang mit dem Debugger, das Ausführen von Komponententests und das Veröffentlichen von Webanwendungen beschrieben.

... & Co. Teil 2, ... & Co.: Der zweite Teil behandelt verschiedene ausgewählte Module, die in der Regel für die Entwicklung einer modernen Webanwendung erforderlich sind. Dies umfasst unter anderem das Verwenden von Vorlagen, die Arbeit mit Websockets, das Anbinden von NoSQL- und relationalen Datenbanken wie auch die Implementierung typischer Querschnittsbelange wie Validierung, Internationalisierung und Authentifizierung.

Reihenfolge der Kapitel Webentwicklern, für die Node.js gänzlich neu ist, sei geraten, die vorgegebene Reihenfolge der Kapitel, insbesondere innerhalb des ersten Teils, einzuhalten.

Zwar sind die Themen der einzelnen Kapitel weitestgehend unabhängig voneinander, und insbesondere der zweite Teil kann prinzipiell in nahezu beliebiger Reihenfolge gelesen werden, allerdings folgen die Kapitel einem für Einsteiger hilfreichen roten Faden.

Durch die Unabhängigkeit der verschiedenen Kapitel kann das Buch jedoch zu einem späteren Zeitpunkt gezielt als Referenz zu den einzelnen Themen verwendet werden.

Auswahl der Module Die Auswahl der im zweiten Teil vorgestellten Module folgt primär deren Verbreitung, sekundär jedoch auch der Erfahrung und teilweise den persönlichen Vorlieben des Autors. In einigen Fällen wurde von verschiedenen gleichwertigen Modulen aus Platzgründen nur eines ausgewählt.

Eine ausschließlich sachliche und nach objektiven Kriterien durchgeführte Auswahl ist bei annähernd 10.000 verfügbaren Modulen3 aus naheliegenden Gründen nicht möglich.

Das Beispielprojekt


Ergänzt wird Node.js & Co. durch ein durchgängiges Beispielprojekt, das von Kapitel zu Kapitel erweitert und um neue Funktionen ergänzt wird.

silkveil.js Dabei handelt es sich um eine Webanwendung, die dem Handel mit digitalen Gütern wie beispielsweise E-Books, Fachartikeln, Bildern, Musik- oder Videodateien dient.

Das Projekt trägt den Namen silkveil.js und steht kostenfrei als Open Source im Web zur Verfügung4.

Schwerpunkt auf Node.js Da der Schwerpunkt des vorliegenden Buches auf Node.js liegt, ist die grafische Benutzeroberfläche des Projekts verhältnismäßig schlicht gestaltet. Insbesondere wird auf die Verwendung von einigen Java-Script-Bibliotheken verzichtet, die in einem realen Projekt fraglos zum Einsatz kämen.

Der Code der grafischen Benutzeroberfläche verwendet daher weder die gängigen Entwurfsmuster noch erfüllt er die üblichen Qualitätsstandards. Dies ist der Entscheidung geschuldet, das Beispiel kompakt und übersichtlich zu halten und deshalb keine Bibliotheken zu verwenden, die keinen direkten Bezug zu Node.js aufweisen.

Aktualität


Das vorliegende Buch ist in dem Zeitraum von Dezember 2011 bis Juli 2012 entstanden. Allein in diesen acht Monaten hat sich Node.js um zahlreiche Versionen weiterentwickelt. Begonnen wurde das Buch auf Basis von Version 0.6.6, im Juni 2012 ist die Version 0.8.0 erschienen.

Kern von Node.js stabil Ein Buch über ein dermaßen schnelllebiges Thema wie Node.js zu schreiben, das zugleich bei seinem Erscheinen noch aktuell ist, ist daher ausgesprochen schwierig. Prinzipiell gilt, dass die in diesem Buch beschriebenen Elemente von Node.js seit längerer Zeit verhältnismäßig stabil sind.

Dennoch stellt dies keine Garantie für die Zukunft dar, so dass es bei dem einen oder anderen Beispiel unter Umständen zu Konflikten kommen könnte.

Gleiches gilt für die verwendeten Module und deren jeweils aktuelle Versionen.

Danksagungen


Node.js & Co. wäre ohne die tatkräftige Unterstützung vieler engagierter Helfer nicht möglich gewesen.

Ingo Rammer und Achim Domma danke ich für das Korrekturlesen und die zahlreichen wertvollen Anregungen, die ich an entsprechender Stelle eingearbeitet habe.

Auch Laurin Stoll und Roberto Bez danke ich für unzählige interessante und aufschlussreiche Diskussionen, teils skeptischer, teils beflügelnder Natur über Node.js und verwandte Technologien.

Ich danke außerdem Jonathan Weiß, ohne den ich JavaScript nicht kennen und vor allem schätzen gelernt hätte.

Des Weiteren danke ich Christian Wenz für die von ihm unter Mac OS X erstellten Screenshots. Gleiches gilt für Alan Wilson, der das Eisbärenfoto aufgenommen und für den Titel zur Verfügung gestellt hat.

Ich danke auch meinem Lektor René Schönfeldt für die zahlreichen E-Mails und Telefonate, in denen er mir jederzeit mit Rat und Tat zur Seite gestanden hat.

Abschließend danke ich meiner Frau Susanna und meiner Tochter Fleur für ihr unendliches Verständnis und ihre Unterstützung. Ohne sie wäre es...

Kategorien

Service

Info/Kontakt