Neues Node.js-Buch

Artikel

Refactoring in JavaScript

web & mobile Developer 6/2018

Microservices in Node.js

web & mobile Developer 5/2018

Clean Code Konzepte in JavaScript

web & mobile Developer 4/2018

Asynchrone Fluent API in JavaScript

web & mobile Developer 4/2018

JavaScript: Die Neuerungen in ES2018

heise Developer 3/2018
Der aktuelle Sprachstandard für JavaScript steht fest. Das ist eine gute Gelegenheit für einen Überblick über die Neuerungen.

Best Practices und Design Patterns für Node.js-Anwendungen

web & mobile Developer 3/2018
Bei der Entwicklung von Node.js-Anwendungen gibt es viele Best Practices. Dieser Artikel zeigt eine Auswahl davon unter anderem bezüglich der Struktur von Packages, dem Build-Prozess, der Konfiguration von Anwendungen, dem Verwalten von Abhängigkeiten und dem Testen.

Entwurfsmuster in JavaScript: Mixins

web & mobile Developer 11/2017
Mixins bezeichnen in der objektorientierten Programmierung zusammengehörige Funktionalität, die bestehenden Klassen hinzugefügt werden kann. Dieser Artikel zeigt, wie sich Mixins in JavaScript realisieren lassen.

Web Sensor APIs

web & mobile Developer 10/2017
Im Zeitalter des Internet of Things ist der Zugriff auf Sensoren ein relevanter Punkt, der zunehmend auch für Webanwendungen interessant wird. Beispielsweise, um in einer mHealth-Anwendung auf Beschleunigungsinformationen des Patienten-Smartphones zuzugreifen und dadurch die Bewegungen des Patienten zu erkennen, etwa zur Erkennung von Stürzen. Zwar können einige Sensordaten wie die genannten Beschleunigungsinformationen bereits heute über APIs abgerufen werden, die nativ von Android oder iOS oder über Plugins durch Apache Cordova oder Adobe PhoneGap bereitgestellt werden. Eine Standardisierung dieser APIs fehlt allerdings bislang. Dieser Artikel gibt einen kurzen Überblick über die Web Sensor APIs, die momentan beim W3C entstehen.

REST-APIs mit Node.js und Swagger

heise Developer 9/2017
Wer sich mit der Konzeption und Entwicklung von REST-APIs beschäftigt, landet früher oder später bei einer API-Beschreibungssprache wie RAML, API Blueprint oder Swagger. Gerade Letzteres lässt die Integration in Node.js-Anwendungen relativ einfach von der Hand gehen.

Nützliche Pakete: Kommandozeile und Dateisystem unter Node.js

web & mobile Developer 9/2017
Die offizielle Registry des Node.js Package Managers (NPM) listet derzeit rund eine halbe Millionen Packages. Sicherlich zuviele für einen einzigen Artikel, weswegen in diesem Artikel auf eine kleine Auswahl an Packages aus den Kategorien "Arbeiten mit der Kommandozeile" und "Arbeiten mit dem Dateisystem" eingegangen wird.

Comeback: SVG-Bibliotheken

web & mobile Developer 8/2017
Das Format SVG (Scalable Vector Graphics) hat in den letzten Jahren ein gehöriges Comeback gefeiert. Dennoch ist es relativ mühsam, SVG "von Hand" selbst zu erstellen. Grund genug, sich einen kurzen Überblick über vorhandene Bibliotheken zu verschaffen, die einem als Entwickler ermöglichen, SVG per JavaScript zu erstellen und – in einigen Fällen – auch zu animieren.

MQTT unter Node.js

web & mobile Developer 7/2017
Bei MQTT (dem "Message Queue Telemetry Transport") handelt es sich um ein Messaging-Protokoll, welches vor allem im Bereich des Internet of Things zum Einsatz kommt, beispielsweise in der Industrie 4.0, im Zusammenspiel mit eHealth- und mHealth-Anwendungen und in Smart-Home- oder sogar Smart-City-Szenarien. Dieser Artikel zeigt, wie sich das Protokoll unter Node.js verwenden lässt.

Web Bluetooth API

web & mobile Developer 7/2017
Bluetooth 4.0 und das damit einhergehende BLE (Abkürzung für Bluetooth Low Energy), welches wie der Name schon andeutet möglichst batterieschonend arbeitet ist als Protokoll im Bereich Internet of Things nicht mehr wegzudenken. Man denke nur an all die mobilen Fitness- oder mHealth-Anwendungen, die sich über genau dieses Protokoll mit den jeweiligen Sensorgeräten (beispielsweise Schrittzähler, Körpergewichtswaagen, Blutdruckmessgeräten oder ähnlichem) verbinden, die entsprechenden Sensordaten auslesen und zur Weiterverarbeitung oder Analyse in die Cloud weiterleiten.

15 Web APIs you've never heard of

Creative Bloq 6/2017
There is really a huge number of Web APIs available and sometimes as a web developer it can be hard to keep track of new APIs. In this article I've collected a list of Web APIs that are not finalized yet and in very early stages, but are likely to become important in the following months or years. Those APIs include handling payments, connecting to sensors, detecting shapes in images, loading fonts, connecting via Bluetooth and many more.

Formen erkennen: die Shape Detection API

web & mobile Developer 6/2017
Die Erkennung von Gesichtern, Barcodes und Texten spielt in modernen Webanwendungen und mobilen Apps eine immer wichtigere Rolle: in Facebook beispielsweise ist es möglich, innerhalb von geposteten Bildern die Gesichter von Freunden zu markieren, die mobile Anwendung für das soziale Musiknetzwerk Discogs (discogs.com) erlaubt das Einscannen der Barcodes von Schallplatten und CDs, um so relativ unkompliziert seine Musiksammlung digital zu erfassen und über die Android- App Text Fairy lassen sich eingescannte Texte automatisch in Textdokumente umwandeln (Stichwort OCR, „Optical Character Recognition“). Nur drei von vielen Beispielen für die Erkennung bestimmter Formen innerhalb von Bilddaten. Über die neue Shape Detection API, die sich gerade in der Entwicklung befindet, lassen sich innerhalb von Bilddaten bestimmte Formen wie etwa Gesichter, Barcodes, QR-Codes oder Text erkennen.

Struktur der Daten: Dynamische APIs mit GraphQL

web & mobile Developer 5/2017
Mit GraphQL hat Facebook eine Anfragesprache geschaffen, über die sich auf Clientseite die Struktur der Daten formulieren lässt, die von einem Webservice zurückgegeben werden sollen. Dieser Artikel gibt eine kurze Übersicht über GraphQL und zeigt vor allem, inwieweit sich GraphQL von REST unterscheidet.

15 Web APIs you've never heard of

net magazine 5/2017
There is really a huge number of Web APIs available and sometimes as a web developer it can be hard to keep track of new APIs. In this article I've collected a list of Web APIs that are not finalized yet and in very early stages, but are likely to become important in the following months or years. Those APIs include handling payments, connecting to sensors, detecting shapes in images, loading fonts, connecting via Bluetooth and many more.

Formate und Tools: Dokumentation von REST-APIs

web & mobile Developer 4/2017
Eine gute und durchdachte REST API beginnt mit einer guten und durchdachten Dokumentation. Bevor es an die Implementierung geht, ist es daher empfehlenswert, sich genau zu überlegen, wie die zu entwickelnde API aufgebaut sein soll. Dadurch lassen sich konzeptionelle Schwachstellen oder Designfehler in einer API frühzeitig erkennen und beheben. Mittlerweile gibt es diesbezüglich einige interessante Formate und Tools, die das Planen, Entwerfen, Dokumentieren und sogar das Testen von REST APIs erleichtern bzw. unterstützen können. Die bekanntesten davon seien im Folgenden kurz vorgestellt: die RESTful API Modeling Language (kurz RAML), API Blueprint, OpenAPI (auch bekannt als Swagger) sowie APIDOC.

Blick in den API-Dschungel, Teil 17: die Server-Sent Events API

web & mobile Developer 4/2017
Die Server-Sent Events API ermöglicht es, vom Server an den Client Nachrichten zu versenden. Perfekte Grundlage für die Darstellung von Echtzeitdaten.

20 Node.js modules you need to know

Creative Bloq 3/2017
Over recent years Node.js has become more and more popular, and it is now often used for developing the server side of web applications, or in general during the development process. At the time of writing, the homepage of npm – the package manager for Node.js – lists over a quarter of a million modules. I've put together a list of the ones I find useful in my daily work as a web and software developer, from image manipulation, string validation and PDF generation to minification, logging and the creation of command line applications.

Wir müssen reden - Bluetooth Low Energy in JavaScript und Node.js

Entwickler Magazin Spezial 3/2017
Bluetooth bzw. Bluetooth Low Energy (BLE) wird im Bereich Internet of Things (IoT) bzw. Web of Things (WoT) immer interessanter, sei es, um vom Smartphone den Fitness- Tracker auszulesen oder um von einem Raspberry Pi auf die Messwerte von Temperatur- und anderen Sensoren zuzugreifen. Über die Node.js-Module bleno und noble lässt sich die Kommunikation zwischen BLE-Geräten sogar unter JavaScript nutzen.

Qualität steigern: Continuous Integration für Node.js-Projekte

web & mobile Developer 3/2017
Continuous Integration kann bei Software-Projekten dabei helfen, die Qualität der Software zu steigern: werden Änderungen in das jeweilige Versionskontrollsystem (Git, Subversion, etc.) committed, führt das CI-System (Continuous Integration System) automatisch („kontinuierlich“) bestimmte Prozesse aus, wie beispielsweise das Kompilieren von Quelltext, Unit- oder Integrationstests, Tests bezüglich der Code-Qualität, Ermittlung der Testabdeckung oder ähnliches.

Blick in den API-Dschungel, Teil 16: die WebSocket API

web & mobile Developer 3/2017
Mittlerweile gibt es verschiedene Standardtechnologien, bei denen der Server Daten an den Client senden kann und die damit eine echte bidirektionale Kommunikation ermöglichen. Eine von diesen Technologien ist die sogenannte WebSocket API, um die es im Folgenden gehen soll.

Mobile Webanwendungen: Einführung in Ionic 2

web & mobile Developer 2/2017
Im Gegensatz zu Ionic 1, welches auf Angular 1 basiert, basiert Ionic 2 – wenig verwunderlich - auf Angular 2. Für den Einstieg in die neue Version von Ionic ist es daher empfehlenswert, sich zunächst mit der neuen Architektur von Angular 2 zu beschäftigten, welches im Unterschied zu Angular 1 einen komponentenbasierten Ansatz hat und zudem den Fokus sehr stark auf die Entwicklung mit TypeScript legt (auch wenn weiterhin natürlich mit reinem JavaScript entwickelt werden kann).

Blick in den API-Dschungel, Teil 15: die Clipboard API

web & mobile Developer 2/2017
Das programmatische Kopieren und Einfügen von Inhalten (Copy & Paste) innerhalb einer Webseite mit Hilfe von JavaScript war lange Zeit nur über Umwege möglich. Eine Bibliothek, die in den vergangenen Jahren häufig verwendet wurde (und auch noch heute verwendet wird) ist ZeroClipboard. Mit der Clipboard API versucht man beim W3C nun, einen standardisierten Ansatz auf den Weg zu bringen, der auf reinem JavaScript basiert und ohne zusätzlichen Browser-Plugins auskommt.

20 Node.js modules you need to know

net magazine 2/2017
Over recent years Node.js has become more and more popular, and it is now often used for developing the server side of web applications, or in general during the development process. At the time of writing, the homepage of npm – the package manager for Node.js – lists over a quarter of a million modules. I've put together a list of the ones I find useful in my daily work as a web and software developer, from image manipulation, string validation and PDF generation to minification, logging and the creation of command line applications.

Desktopanwendungen mit JavaScript

heise Developer 2/2017
JavaScript gilt als eierlegende Wollmilchsau unter den Programmiersprachen. Mittlerweile macht sie auch im Bereich der Desktopanwendungen eine gute Figur. Dieser Artikel stellt die beiden Frameworks NW.js und Electron vor, die die WebKit-Engine mit der Node.js-Runtime kombinieren.

Wir müssen reden - Bluetooth Low Energy in JavaScript und Node.js

JAXenter 1/2017
Bluetooth bzw. Bluetooth Low Energy (BLE) wird im Bereich Internet of Things (IoT) bzw. Web of Things (WoT) immer interessanter, sei es, um vom Smartphone den Fitness- Tracker auszulesen oder um von einem Raspberry Pi auf die Messwerte von Temperatur- und anderen Sensoren zuzugreifen. Über die Node.js-Module bleno und noble lässt sich die Kommunikation zwischen BLE-Geräten sogar unter JavaScript nutzen.

Arbeitserleichterung: Datenvisualisierung mit D3.js

web & mobile Developer 1/2017
Die JavaScript-Bibliothek D3.js ist ein mächtiges und flexibles Werkzeug, wenn es darum geht, verschiedenste Arten von Diagrammen bzw. Datenvisualisierungen zu erzeugen. Allerdings haben die Mächtigkeit und die Flexibilität auch einen Preis: der Einstieg in D3.js ist nicht gerade einfach. Oder besser gesagt: möchte man komplexere Diagramme erstellen, muss man einiges an Einarbeitungszeit investieren, um die API von D3.js sicher zu beherrschen. Einfache Visualisierungen mögen vielleicht noch relativ schnell gelingen, komplexere wie beispielsweise Echtzeitdiagramme (Real Time Charts) sind da jedoch schon ein wenig aufwändiger zu implementieren.

Blick in den API-Dschungel, Teil 14: die Service Worker API

web & mobile Developer 1/2017
Im Gegensatz zu "normalen" Scripts, die sofort gestoppt werden, wenn die dazugehörige Webseite bzw. das entsprechende Browsertab bzw. Browserfenster geschlossen wird, handelt es sich bei Service Workern um Scripts, die unabhängig von einer Webseite im Hintergrund laufen. Dadurch ergeben sich wie in diesem Artikel gezeigt ganz neue Möglichkeiten, die insbesondere dann interessant sind, wenn eine Webanwendung (oder Webseite) offline- fähig sein soll.

Komponenten entkoppeln: Messaging in JavaScript

web & mobile Developer 12/2016
Bei der Implementierung komplexer Software-Systeme, bei denen verschiedenen Komponenten bzw. Anwendungen miteinander interagieren müssen, können Messaging-Systeme dabei helfen, eine Kopplung zwischen den einzelnen Komponenten zu vermeiden. Statt dass diese direkt miteinander kommunizieren, findet die gesamte Kommunikation über das Messaging-System statt. Einzelne Komponenten schicken dazu Nachrichten an das Messaging-System oder rufen Nachrichten von dort ab. Messaging-Systeme übernehmen dabei verschiedene Aufgaben: zum einen können eingehende Nachrichten nach bestimmten Regeln verteilt werden, sodass diese von anderen Komponenten abgerufen werden können (Routing), zum anderen sorgen Messaging-Systeme dafür, Nachrichten zwischen verschiedenen Messaging- Protokollen zu übersetzen.

Blick in den API-Dschungel, Teil 13: die Selection API

web & mobile Developer 12/2016
Über die Selection API ist es möglich, Textinhalte auf einer Webseite per JavaScript auszuwählen und zu bearbeiten. Die API befindet sich momentan beim W3C im Status "Working Draft", wird mittlerweile aber von so gut wie allen modernen Browsern unterstützt.

Wir müssen reden - Bluetooth Low Energy in JavaScript und Node.js

Java Magazin 12/2016
Bluetooth bzw. Bluetooth Low Energy (BLE) wird im Bereich Internet of Things (IoT) bzw. Web of Things (WoT) immer interessanter, sei es, um vom Smartphone den Fitness- Tracker auszulesen oder um von einem Raspberry Pi auf die Messwerte von Temperatur- und anderen Sensoren zuzugreifen. Über die Node.js-Module bleno und noble lässt sich die Kommunikation zwischen BLE-Geräten sogar unter JavaScript nutzen.

Programmierparadigmen Teil 4: Aspektorientierte Programmierung in JavaScript

web & mobile Developer 11/2016
Bei der aspektorientierten Programmierung (kurz AOP) handelt es sich um ein Programmierparadigma, welches im Zusammenhang mit der objektorientierten Programmierung zum Einsatz kommt und deren Idee es ist, generische Funktionalitäten wie etwa Logging, Caching, Transaktionsmanagement etc. (sprich sogenannte Cross Cutting Concerns oder im Jargon der aspektorientierten Programmierung auch „Aspekte“) vom eigentlichen Anwendungscode getrennt zu halten und den Code dadurch insgesamt klarer und modularer zu halten.

Blick in den API-Dschungel, Teil 12: die Internationalization API

web & mobile Developer 11/2016
Sobald eine Webseite oder Webanwendung mehrsprachig sein soll, ist eine gescheite Internationalisierung ebensolcher unumgänglich. Die Idee dabei ist es - soviel dürfte bekannt sein - eine Anwendung so zu strukturieren, dass sie ohne großen Aufwand an verschiedene Sprachen (oder noch allgemeiner: an verschiedene Regionen) angepasst werden kann. Die ECMAScript 2017 Internationalization API ermöglicht die sprachabhängige Formatierung von Zahlenwerten, Datums- und Zeitangaben sowie den sprachabhängigen Vergleich von Zeichenketten.

Programmierparadigmen Teil 3: Funktional reaktive Programmierung in JavaScript

web & mobile Developer 10/2016
Der Begriff der funktional reaktiven Programmierung (kurz FRP) dürfte den meisten Web-Entwicklern schon begegnet sein. Doch was verbirgt sich eigentlich hinter diesem Programmierparadigma? Dieser Artikel soll eine Einführung geben und anhand einiger Beispiele und der JavaScript-Bibliothek RxJS die Prinzipien erläutern.

Blick in den API-Dschungel, Teil 11: die Command Line API

web & mobile Developer 10/2016
Browsertools wie die Chrome Developer Tools, Firebug oder die Entwicklertools von Safari gehören zu den Standardwerkzeugen eines jeden Webentwicklers. Sei es, um den DOM-Baum einer Webseite zu inspizieren, Ausgaben auf der Konsole zu erzeugen, Ausdrücke und Funktionsaufrufe auszuwerten oder um Breakpoints für das Debuggen zu definieren, den JavaScript-Code einer Webanwendung Schritt für Schritt durchzugehen, die Anwendung zu profilen und den Netzwerkverkehr zu beobachten. Dass diese Tools verschiedene Funktionalitäten auch per JavaScript zur Verfügung stellen, wissen allerdings nur die wenigsten Entwickler. Gute Gelegenheit also, im Folgenden einmal einen kurzen Überblick über die relativ unbekannte Command Line API zu geben, die beispielsweise von Chrome, Safari und Firefox unterstützt wird.

Generic Sensor API

net magazine 9/2016
There are many different web APIs that define interfaces for different kinds of sensors, such as the Geolocation API or the Device Orientation API. However, those APIs do not share a common interface. Currently in Working Draft, the new Generic Sensor API defines a common interface for accessing sensor information.

Programmierparadigmen Teil 2: Funktionale Programmierung in JavaScript

web & mobile Developer 9/2016
Neben der objektorientierten Programmierung, die ich Ihnen in Ausgabe 07/2016 vorgestellt habe, ist die sogenannte funktionale Programmierung ein weiteres wichtiges Programmierparadigma, welches in JavaScript eine zentrale Rolle spielt. Doch was bedeutet funktionale Programmierung überhaupt? Welche Prinzipien liegen diesem Programmierparadigma zugrunde? Was ist der Unterschied zu der objektorientierten Programmierung? Und was der Unterschied zu der imperativen Programmierung?

Blick in den API-Dschungel, Teil 10: die History API

web & mobile Developer 9/2016
Jedes Mal, wenn der Browser eine neue Webseite lädt oder auch, wenn innerhalb einer Webseite zu einer Sprungmarke (einem Anker) gesprungen wird, erzeugt er standardmäßig einen neuen Eintrag im Browserverlauf. Das History API ermöglicht den Zugriff auf diesen Browserverlauf per JavaScript.

IoT-Programmierung mit Cylon.js

web & mobile Developer 8/2016
Der Zugriff auf Microcontroller bzw. Sensoren und Aktoren wird auch im Bereich der JavaScript-Entwicklung immer interessanter: Plattformen wie Tessel (https://tessel.io/) und Espruino (http://www.espruino.com/) verfügen bereits standardmäßig über eigene JavaScript- Interpreter, sodass auf diesen Plattformen JavaScript- Anwendungen direkt ausgeführt werden können. Für den Zugriff auf Arduino-Geräte kommt dagegen in der Regel das sogenannte Firmata-Protokoll zum Einsatz (https://www.arduino.cc/en/Reference/Firmata), wobei es auch hierfür entsprechende JavaScript-Clients gibt. Kleiner Wehrmutstropfen: jeder Microcontroller verwendet sein eigenes SDK und definiert entsprechend sein eigenes API.

Blick in den API-Dschungel, Teil 9: die File API

web & mobile Developer 8/2016
Über das File API ist es möglich, per JavaScript auf lokale Dateien des Nutzers zuzugreifen, sofern dieser die jeweiligen Dateien zuvor in einem entsprechenden Dialog ausgewählt hat.

Programmierparadigmen Teil 1: Objektorientierte Programmierung in JavaScript

web & mobile Developer 7/2016
In JavaScript sieht Objektorientierung anders aus als in Sprachen wie Java. Dieser Artikel erläutert das Prinzip und geht dabei auf die prototypische, die pseudoklassiche und die auf Klassensyntax basierende Objektorientierung ein.

Blick in den API-Dschungel, Teil 8: die Web Storage API

web & mobile Developer 7/2016
Über das Web Storage API ist es Webentwicklern möglich, innerhalb einer Webanwendung Daten lokal auf Clientseite zu speichern. Dabei unterscheidet man prinzipiell zwischen zwei verschiedenen Arten von Browserspeichern: dem lokalen Browserpeicher, der übergreifen über verschiedene Browserfenster und –tabs zugänglich ist, sowie dem Sessionspeicher, der nur innerhalb eines einzelnen Browsertabs zugänglich ist.

Process Management unter Node.js mit PM2

web & mobile Developer 6/2016
In Produktionsumgebungen können Process Manager das Steuern einzelner Prozesse bzw. Anwendungen erleichtern. Node.js bringt von Haus aus zwar keinen Process Manager mit, das Modul PM2 schließt jedoch diese Lücke.

Blick in den API-Dschungel, Teil 7: die Geolocation API und die Google Maps API

web & mobile Developer 6/2016
Mit Hilfe des Geolocation APIs lassen sich Standortinformationen des Nutzers ermitteln. Diese Informationen können anschließend beispielsweise dazu verwendet werden, um über das Google Maps API den Standort des Nutzers auf einer Karte anzuzeigen.

Aus der Werkzeugkiste, Teil 1: Philip Ackermann

heise Developer 5/2016
In einer neuen Interview-Reihe gewähren Entwickler heise Developer einen Einblick in ihre Toolsammlung. Den Anfang macht Softwareentwickler Philip Ackermann.

Modularisierung in JavaScript

web & mobile Developer 5/2016
Gerade in großen Projekten ist es ratsam, den Quelltext in gewisser Art zu strukturieren und in einzelne Module zusammenzufassen. Einige Sprache wie Python unterstützen Module bereits nativ. In JavaScript dagegen fehlte ein solcher Support bis vor kurzem. Erst mit Version ES6 (bzw. ES2015) sind Module ein Bestandteil des Standards und damit der Sprache. Da dies aber relativ lange eben nicht der Fall war, haben sich im Laufe der Zeit verschiedene Entwurfsmuster und Techniken herausgebildet, um Quelltext modular aufzubauen und in wiederverwendbare Module zusammenzufassen.

Blick in den API-Dschungel, Teil 6: die Constraint Validation API

web & mobile Developer 5/2016
Noch vor einigen Jahren war die Validierung von Formularfeldern nur mit JavaScript möglich. Mittlerweile bietet HTML schon von Haus aus gewisse Möglichkeiten zur Überprüfung von Formularfeldern an, was mittlerweile auch von allen gängigen Browsern unterstützt wird.

Blick in den API-Dschungel, Teil 5: die IndexedDB API

web & mobile Developer 4/2016
Das IndexedDB API bietet Web- Entwicklern die Möglichkeit, eine clientseitige – im Browser verfügbare – Datenbank zu nutzen. Vom Prinzip her funktioniert diese genauso wie auch eine serverseitige Datenbank, das heißt, man kann in ihr Datensätze erstellen, Datensätze auslesen, aktualisieren oder wieder löschen.

Richtig schreiben - ES6-Klassen und Konfigurationsobjekte

iX 3/2016
Konfigurationsobjekte helfen dabei, wenn es um die Erstellung von Objektinstanzen auf Basis von ES6-Klassen geht. Doch für sauberen Code ist dabei einiges zu beachten.

Formulargenerierung mit JavaScript

web & mobile Developer 3/2016
Das manuelle Erstellen von Webformularen kann mitunter recht langweilig sein. Oftmals sind Formulare ähnlich aufgebaut (beispielsweise Bestellformulare, Login- Formulare oder Formulare zur Registrierung), sodass man über kurz oder lang wahrscheinlich einen Online- Formulargenerator zu Hilfe zieht oder zumindest aus einem Fundus von eigenen Formularvorlagen wählt und diese den jeweiligen Bedürfnissen anpasst. Bei AlpacaJS handelt es sich um ein Plugin für jQuery, mit Hilfe dessen sich automatisch Formulare per JavaScript generieren lassen. Die Konfiguration erfolgt über JavaScript-Objekte oder über JSON-Dateien.

Blick in den API-Dschungel, Teil 4: die Navigation Timing API

web & mobile Developer 3/2016
Das Navigation Timing API bietet Web- Entwicklern die Möglichkeit, per JavaScript verschiedene Aspekte bezüglich der Performance einer Webseite zu messen. Die Spezifikation ist schon relativ lange eine Empfehlung des W3C und wird daher auch von dem Großteil der verschiedenen Browser unterstützt. Dennoch ist der Bekanntheitsgrad des APIs unter Webentwicklern eher gering. Gute Gelegenheit also, einmal einen etwas genaueren Blick darauf zu werfen.

Visuelle Regressionstests unter Node.js mit WebDriverIO und Selenium 2.0

web & mobile Developer 2/2016
Regressionstests dienen in der Software-Entwicklung dazu, sicherzustellen, dass Änderungen an einer Software für bestehende Komponenten keine neuen Fehler verursachen. Dieser Artikel zeigt, wie Sie mit Hilfe der Bibliothek WebDriverIO Regressionstests für Webanwendungen durchführen können.

Blick in den API-Dschungel, Teil 3: die Web Animations API

web & mobile Developer 2/2016
Das Web Animation API bietet Web-Entwicklern die Möglichkeit, innerhalb einer Webseite per JavaScript Animationen zu definieren und zu steuern.

Git kompakt: Versionsverwaltung mit Git

web & mobile Developer 1/2016
Das Versionsverwaltungssystem Git unterscheidet sich in vielerlei Hinsicht von anderen Versionsverwaltungssystemen. Dieser Artikel gibt einen kompakten Überblick über die Unterschiede und stellt die wichtigsten Konzepte und typischen Arbeitsabläufe von Git vor.

Blick in den API-Dschungel, Teil 2: die Battery Status API

web & mobile Developer 1/2016
In dieser Artikelreihe geht es monatlich um verschiedene Themen rund um die Webentwicklung. Nachdem vorigen Monat die Web Speech API vorgestellt wurde, geht es dieses Mal um die Battery Status API.

Topfit - Internet of Things für Einsteiger

iX Developer 1/2016
Die Entwicklung prototypischer Anwendungen ist nur eines der Szenarien im IoT-Kontext, in denen sich JavaScript mittlerweile einsetzen lässt. Wer die Lingua Franca des Web beherrscht, ist häufig in der Lage, Brücken zwischen alter und neuer Technik zu schlagen.

Blick in den API-Dschungel, Teil 1: die Web Speech API

web & mobile Developer 12/2015
Die Web Speech API bietet Web-Entwicklern die Möglichkeit, innerhalb einer Webseite programmatisch Sprache auszugeben und Sprache zu erkennen. Analog dazu definiert die API zwei Interfaces: SpeechRegognition für die Spracherkennung und SpeechSynthesis für die Sprachausgabe.

Schön geordnet: Gestaltungsraster mit dem CSS Grid Layout

web & mobile Developer 12/2015
Die Verwendung von Gestaltungsrastern (englisch Grids) gehört mittlerweile zu den Best Practices bei der Entwicklung von Webseiten. Dabei werden die Elemente einer Webseite horizontal und vertikal anhand eines Rasters angeordnet, was insbesondere bei der Umsetzung von Layoutvorgaben eine enorme Erleichterung darstellen kann.

JavaScript und das Internet of Things, Teil 2: BeagleBone Black und Arduino

heise Developer 10/2015
Neben Espruino und Tessel gibt es noch weitere Plattformen, die JavaScript-Entwicklern den Einstieg in die hardwarenahe Programmierung erleichtern.

Architekturmuster und Konzepte moderner JavaScript-Webframeworks

web & mobile Developer 10/2015
JavaScript-Webframeworks gibt es mittlerweile recht viele: AngularJS, EmberJS, KnockoutJS, BackboneJS und React um nur einige der prominentesten Vertreter dieser Gattung zu nennen. Die Konzepte und Architekturmuster, die in solchen Frameworks zum Einsatz kommen, sind jedoch oftmals recht ähnlich. Kenntnisse über diese Konzepte und Architekturmuster sollten also im Wissensschatz eines Web-Entwicklers nicht fehlen. Dieser Artikel gibt einen Überblick.

JavaScript und das Internet of Things, Teil 1: Espruino und Tessel

heise Developer 9/2015
JavaScript, die Lingua franca des Web, kommt mittlerweile auch im Bereich des Internet der Dinge zum Einsatz, insbesondere bei der Entwicklung prototypischer Anwendungen.

Vorschau auf AngularJS 2.0

web & mobile Developer 9/2015
Kaum ein anderes JavaScript-Webframework hat einen ähnlichen Bekanntheits- und Beliebtheitsgrad wie AngularJS. Um so größer war zunächst die Empörung darüber, als bekannt wurde, dass sich für die neue Version des Frameworks sowohl Architektur als auch API komplett ändern würden. Nachdem nun der erste Schreck verflogen ist, muss man aber eingestehen: die Berücksichtigung und starke Integration von Standards wie Web Components oder ECMAScript6 sind langfristig die richtige Wahl. Dieser Artikel wirft einen ersten Blick auf die neue Version von AngularJS 2.0 und stellt dessen wichtigsten Konzepte kurz vor.

Entwurfsmuster in JavaScript

SCREENGUIDE 7/2015
Allgemein bezeichnen Entwurfsmuster in der Softwareentwicklung bestimmte Herangehensweisen für wiederkehrende Problemstellungen. In der objektorientierten Programmierung zählen die Entwurfsmuster der Gang of Four (GoF-Entwurfsmuster) zu den bekanntesten, die erstmals in dem bekannten Buch "Entwurfsmuster – Elemente wiederverwendbarer objektorientierter Software" beschrieben wurden. Dieser Artikel zeigt, wie einige dieser Entwurfsmuster in JavaScript umgesetzt werden und gibt eine Übersicht über die Relevanz der Entwurfsmuster in JavaScript.

Testen von JavaScript-Anwendungen

web & mobile Developer 6/2015
Der Aspekt des automatisierten Testens ist unabhängig von der eingesetzten Programmiersprache ein wichtiger Bestandteil in der professionellen Software-Entwicklung. Auch bei der Entwicklung von JavaScript-Anwendungen lassen sich über entsprechende Bibliotheken Aspekte wie Unit-Testing, Mocking und Testabdeckung in den Entwicklungsprozess integrieren. Dieser Artikel stellt einige dieser Bibliotheken vor.

Neues in ECMAScript 6

SCREENGUIDE 1/2015
Die nächste Version von ECMAScript (ES6), dem Standard hinter JavaScript bringt eine ganze Reihe von neuen Features. Neben Erweiterungen der Standard-API sind dies hauptsächlich syntaktische Feinheiten, die vieles erleichtern, was in ES5 nur über Umwege möglich war.

Kompetente Puzzleteile - Wiederverwendbares HTML durch Web Components

iX 1/2015
Cascading Stylesheets und JavaScript-Bibliotheken können Webdesigner in ihre HTML-Dokumente einbinden. Für HTML-Komponenten selbst gibt es lediglich das <iframe>-Element. Das soll sich durch die Implementierung mehrerer Spezifikationen in Browsern ändern.

 Ausgemustert? GoF-Entwurfsmuster in JavaScript

iX 2/2014
Die GoF-Entwurfsmuster stellen Lösungen für wiederkehrende Probleme dar, die in Programmiersprachen wie Java aufgrund fehlender Sprachmittel existieren. Doch ist ihre Verwendung in JavaScript gerechtfertigt?

Gut in Form - Übersicht: Entwurfsmuster in JavaScript

iX Developer 1/2014
Seit JavaScript als Programmiersprache akzeptiert ist, mit der sich auch komplexere Anwendungen inklusive serverseitiger Komponenten entwickeln lassen, ist es für Programmierer umso wichtiger, den Quelltext den neuen Anforderungen entsprechend zu strukturieren. Mehrere Entwurfsmuster haben sich dafür etabliert.

Headless Browser Testing - Webseiten rendern und testen ohne Browser

iX Developer 1/2014
Nachdem man den Code einer Anwendung geändert hat, sollte man prüfen, ob die Benutzeroberfläche noch wie gewünscht funktioniert. Mit PhantomJS lassen sich Webseiten rendern, ohne eine Browser-GUI zu starten und die Kombination mit CasperJS hilft dabei, Szenarien für Integrations- und Regressionstests zu erarbeiten.

Hilfestellung - Projektbericht: Adaptation von Webinhalten mit Node.js

iX Developer 1/2014
Den Inhalt einer Webseite abhängig vom Nutzer, von den Eigenschaften des Endergäts und der verwendeten assistiven Software anzupassen, ist eine große Herausforderung. Der folgende Projektbericht zeigt, wie Node.js auf dem Client dazu eingesetzt wurde, nutzer- und gerätespezifische Informationen zu extrahieren und den Anwendern eine Möglichkeit zur Konfiguration ihrer Einstellungen zu geben.