Promises mit JavaScript

am 17. März 2015 in Tools & Bücher von
Bisher unkommentiert »

Promises mit Javascript

JavaScript hat die Eigenschaft, dass alle Aufgaben in nur einem Thread ablaufen. Ein Thread ist Teil eines Prozesses in dem Aufgaben sequentiell getätigt werden. Das heißt es ist nicht möglich zwei Aufgaben zur selben Zeit zu verarbeiten.

Der Code, der solch einer Denkweise folgt, basiert dann meist auf Events und Callbacks. Es werden Listener eingerichtet, die auf bestimmte Trigger (Auslöser) hören und dann eine Aufgabe durchführen. Dennoch kann es passieren, dass ein Trigger angestoßen wurde, aber der Listener noch nicht bereit war.

Das Konzept der Promises beseitigt lästige Callback-Fluten und bringt verbessertes Error-Handling.
Jede Funktion liefert ein Versprechen (Promise). Wenn diese eingehalten wird, wird die nächste Aufgabe ausgeführt und das Versprechen übermittelt. Wird dieses gebrochen, etwa durch einen Fehler, dann wird der Fehler an einer Stelle abgefangen. Asynchrone Aufgaben werden damit also zur Leichtigkeit.

 

Eine solche Promise kann

  • fullfilled — erfolgt
  • rejected — abgelehnt
  • pending — laufend
  • settled — erfolgt oder abgelehnt

sein.

 

Ein Code-Beispiel

Quelle: https://github.com/petkaantonov/bluebird

Promises Code

Hier wird sichtbar, wie mit “then”-Verknüpfungen, logische Konstrukte erschaffen werden.
Error-Handling und Code-Ausführung sind hierbei separat.

Wieso nun Promises nutzen?

  • übersichtlicherer Code (keine diagonalen Callback-Abläufe)
  • Error-Handling
  • Asynchrone Operationen
  • Callbacks aggregieren

 

Libraries

Q – https://github.com/kriskowal/q
when – https://github.com/cujojs/when
then.js – https://github.com/teambition/then.js
bluebird – https://github.com/petkaantonov/bluebird

 

Das neue Laravel 5 – PHP Framework für Web-Künstler

am 24. Februar 2015 in Aktuelles, Tools & Bücher von
Bisher unkommentiert »

Laravel 5 - Love beautiful code? We do too!

Laravel hat sich seit dem ersten Release 2011 zum mittlerweile beliebtesten PHP Framework der Welt entwickelt.

Von vielen wird Laravel die Rettung von PHP genannt. Mit einer unglaublich guten Dokumentation, einer einfachen und übersichtlichen Code-Struktur und jeder Menge Features überrannte Laravel die PHP-Community im Sturm.
>> Weiterlesen

Getagged: , ,

Discount Usability Methoden – eine günstige Alternative?

am 15. Februar 2015 in Aktuelles von
Bisher unkommentiert »

Heutzutage ist eine gute Usability, also eine angemessene Benutzerfreundlichkeit, für eine Website oder Software unabdinglich. Die tollsten Features und Funktionen sind nutzlos, wenn ein Nutzer nicht weiß, wie er sie bedienen soll.

Doch wie erreicht man eine gute Usability? Eines der bekanntesten Mittel ist der Usability Test, also das Testen einer Website oder Software durch echte Nutzer. Hierbei kommen meistens auch Techniken wie Eye- oder Mousetracking zum Einsatz. Solche Tests sind allerdings zeit- und personalaufwändig und können kostenintensiv werden.

Eine Alternative zu solchen Usability Tests stellt das sogenannte Discount Usability Engineering dar.

>> Weiterlesen

Datenvisualisierung von Erneuerbaren Energien

am 14. Februar 2015 in Projektarbeiten & Studien von
Bisher unkommentiert »

Aufgabe der Projektarbeit in der Vorlesung “Multimediales Informationsdesign” bei Dipl.-Des. Lothar B. Blum war es, Print-Berichte zu verschiedensten Themen interaktiv umzusetzen. Interaktives Informationsdesign und Storytelling standen dabei im Fokus.

Folgende Themen standen zu Auswahl:

  1. Erneuerbare Energien in Europa
  2. Klassifizierung von Nutzertypen in Deutschland
  3. Wohnungseinbruchdiebstahl in Deutschland

Neben der einfachen Darstellung komplexer Datensätze, musste auf Gestaltung und Bedienbarkeit des Prototypen geachtet werden.

>> Weiterlesen

Der lange Weg zu Responsive Images

am 09. Februar 2015 in Aktuelles von
1 Kommentar »

Die Spezifikation von HTML5 ist nach Jahren der Entwicklung endlich eine Empfehlung des W3C. Vor allem ein Element hat dabei für viel Wirbel gesorgt: Das Picture-Element. Das neue Element soll die immer wachsende Gerätevielfalt und die damit verbundenen Displaygrößen und Auflösungen bändigen und „responsive images“ endlich ohne Hilfsmittel ermöglichen.

Die Geschichte der Responsive Images beginnt mir der des Responsive Webdesigns. 2010 schrieb Ethan Marcotte einen Artikel mit dem gleichnamigen Titel „Responsive Web Design“. Er war der erste der diesen Begriff benutzte und er stellte sich darunter Webseiten vor, welche sich mit relativen Breitenangaben an jeden Monitor und jedes Gerät anpassen würden. Sein Artikel enthielt ein Codebeispiel, welches eine einfache responsive (anpassungsfähige) Webseite zeigte.

Die erste responsive Webseite von Ethan Marcotte

Die erste responsive Webseite von Ethan Marcotte

Der Durchbruch dieser Idee kam mit der Veröffentlichung der neuen Webseite des Bosten Globe – die erste große Seite bei der „Responsive Design“ umgesetzt wurde. Marcotte und die Filament Group waren die Entwickler der neuen Seite. Sie dokumentierten neben dem großen Erflog auch einige Probleme bei der Entwicklung. Vor allem aber ein Problem: Bilder.

>> Weiterlesen

AngularJS – “Model View Whatever”

am 29. Januar 2015 in Tools & Bücher von
1 Kommentar »

AngularJS-Logo by Google

AngularJS ist ein von Google entwickeltes Framework. Es ist Open Source und ermöglicht einem die Erstellung von HTML- und JavaScript-Applikationen nach dem Model-View-Controller Prinzip. Der provokante Leitspruch zeigt die Richtung, in die sich AngularJS bewegt:

“AngularJS is what HTML would have been,
had it been designed for building web-apps.”

“Model View Whatever” (kurz: MVW) deutet darauf hin, dass sich AngularJS nicht nur strikt an das in der Programmierung übliche MVC-Prinzip hält (“Model View Controller”), sondern verschiedene Konzepte vereint (u. a. Model-View-ViewModel, kurz MVVM).
>> Weiterlesen

Getagged: