Kleines Lexikon der App-Entwicklung

Woraus besteht eine App und wie bringen wir sie dazu, das zu machen, was sie soll?

Liest man sich einfach mal quer durch die verschiedenen Kategorien unseres Blogs versteht man als Nicht-Programmierer oft nur Bahnhof. In diesem Beitrag will ich versuchen, ein wenig Licht in das Dunkel des Entwickler-Lateins zu bringen, Begrifflichkeiten zu klären und den FLYACTS-Entwicklungsansatz verdeutlichen.

Weiterlesen »

Hybride Desktop-Apps mit dem Framework Electron

Als Agentur setzen wir auf den Ansatz der hybriden (sprich cross platform) Entwicklung. Mit Hilfe der von uns bereits vorgestellten Technologien, wie Cordova, PhoneGap und Ionic lassen sich mobile Apps für die bekanntesten mobilen Betriebssysteme mit Webtechnologien entwickeln. Diesen Ansatz hat auch Team rund um das Projekt GitHub aufgegriffen. Jedoch portieren sie die Idee von Web- und Mobile-Apps zu richtigen Desktop-Anwendungen. Aus ihrer Idee ist am Ende ein mächtiges, aber noch sehr junges, Framework mit dem Namen Electron entstanden.

Weiterlesen »

Node.js 4.0 – Die neue, stabile Version 1.0 ist raus

Wie schon in anderen unserer Blogbeiträge angedeutet, ist es nun endlich soweit. Das erste stabile Release von Node.js über die neue Node.js Foundation ist erschienen.
Es ist die erste Version die sowohl die Quellen von io.js als auch von Node.js beinhaltet. Sie erhält nicht wie früher einmal angedacht die Nummer 1.0, sondern 4.0.
Durch den Zusammenschluss der beiden Projekte hat man sich darauf geeinigt die letzte Versionsnummer von io.js (3.x) hochzuzählen.
Ab jetzt läuft das Gemeinschaftsprojekt unter dem GitHub-Repository nodejs/node und nicht wir vorher unter joyent/node.

Weiterlesen »

io.js: Version 3 des Node.js Forks erschienen

Für alle, die io.js noch nicht kennen

Bis Ende 2013 verlief die Entwicklung von Node.js noch recht zügig. Leider stagnierte im darauf folgendem Jahr die Umsetzung neuer Features und das Beheben von Problemen.
Die Community war erzürnt, weshalb sich ein paar größere Unterstützer entschlossen einen eigenen Ableger des, von dem Unternehmen Joyent geförderten, Frameworks zu entwickeln.
So erblickte Ende 2014 io.js die Welt. Die Mitbegründer drückten ihrem Framework auch zeitnah die Version 1.0.0 auf.
Die Node.js Community spaltete sich, doch wurde vor kurzem erst ein riesiger Schritt gewagt, um beide Projekte wieder miteinander zu verbinden und an einer gemeinsamen Zukunft von Node.js zu arbeiten. Joyent zog sich zurück und die Projekte laufen nun zusammen unter Node.js Foundation. Das io.js Projekt bestätigte auch, dass die Quellen von io.js wieder in Node.js einfließen werden. Seit kurzem ist im Kopfbereich der Node.js-Webseite auch das Logo der Linux-Foundation (eine Plattform zur Zusammenarbeit an großen Projekten) sichtbar :)!
Weiterlesen »

AngularJS – Paketierung und Minifizierung mit RequireJS

Dieses Tutorial beschäftigt sich mit einem wichtigen Schritt zur Veröffentlichung einer App oder Webseite mit AngularJS – dem Paketieren und Minifizieren der Quelldateien. Wie im Beitrag Tutorial – AngularJS mit RequireJS beschrieben, lassen sich auch AngularJS Anwendung leicht mit RequireJS strukturieren und optimieren. Es gibt es jedoch Fälle, wie zum Beispiel – mobile Apps – wo das Nachladen von Modulen nicht unbedingt notwendig ist. Trotzdem kann RequireJS benutzt werden, um z.B. eine geeignete Projektstruktur zu erhalten, externe Bibliotheken zu verwalten oder ein einheitliches Programmierschema für AngularJS Anwendungen zu etablieren (Teamarbeit).

Weiterlesen »

Node.js – XML Daten verarbeiten

Neben den zahlreichen Einsatzmöglichkeiten von Node.js ist ein Hauptanwendungsfall die Verwendung als API-Schnittstelle für mobile - und Web-Anwendungen. Viele andere – oft ältere – Schnittstellen unterstützen jedoch kein JSON-Format, sondern nur XML. Die Verarbeitung solcher Daten in Node.js ist nicht ohne Weiteres möglich. Für dieses Szenario bietet das node-Modul xml2js eine Lösung. Damit lassen sich XML-Strukturen einfach in JSON-Objekte umwandeln.
Weiterlesen »

node.js – Tasks blockieren mit dem Modul “Locker”

Ein Vorteil von node.js ist die Asynchronität. Leider kann diese äußerst positive Eigenschaft dem Entwickler in einigen Spezialfällen starkes Kopfzerbrechen bereiten. Als Beispiel haben wir eine API geschrieben, die Anfragen entgegennimmt und Daten aus einer Datenbank ausliest und schreibt bzw. löscht. Zusätzlich wird auf dem Dateisystem gearbeitet und Dateien werden kopiert und archiviert. Da es sich um sensible Daten handelt, sollte beim Archivieren oder auch beim Kopieren von den Dateien nichts schief gehen. Kommen nun zwei Anfragen an, die den länger dauernden Prozess anstoßen, überschneiden sich diese und können dadurch möglicherweise nicht erfolgreich ausgeführt werden.

Wie lässt sich nun ein Codeblock oder etwa ein API-Endpunkt für weitere Anfragen blockieren?

Weiterlesen »