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.