Software Testing (1/4) – Introduction

Testing pyramid - illustrating the kinds of existing software test opportunities

First of all, I do not want to discuss what kind of software developing process one should choose or prefer. If it’s either TDD in combination with Scrum or Waterfall – I don’t mind. The intention of this series about … Weiterlesen

Die Zukunft des Investment Reportings

Performance-Dashboard-Graphical-Recording

Am 5. Dezember fand in Zürich im ConventionPoint eine Veranstaltung zum Thema „Trends im Client Reporting“ mit dem Motto „Die Zukunft des Investment Reportings – was wir von anderen Branchen lernen können“ statt. Dabei durfte ich ein kurzes Referat über … Weiterlesen

Digital Asset Management für Grafik & DTP

mobile-trends

Desktop Publishing Abteilungen sind auf sie angewiesen. Hochauflösende Bilder werden für Produktkataloge, Werbemittel und diverse andere Marketingmassnahmen in modernen Unternehmen benötigt. Neu hinzugekommen sind in den letzten Jahren digitale Kanäle wie Soziale Netzwerke, moderne Websites oder eShops. Weiterlesen

Toolvergleich JMeter versus ProxySniffer

JmeterVsPS2

Es gibt  eine Vielzahl  von Tools im Internet, die sich ausführlich mit dem Thema Lasttests befassen. Es  gibt viele Tools die ganz einfach einen Server mit einer vorgebebenen Requestabfolge anfragen können, in der Regel  ein paar Logfiles aufbereiten und die … Weiterlesen

GWT Blog-Serie – GWT im Vergleich zu jQuery Mobile und Sencha Touch (3/4)

mgwt

Quelle: https://code.google.com/p/mgwt/

Wer gegenwärtig ein mobile App entwickelt, der sollte sich vor der Konzeption entscheiden, ob er die App nativ oder als Web-App implementieren will. Die Entscheidung hängt oft davon ab auf welchen Plattformen die App zugänglich sein soll.

Soll die App nur auf einer Plattform verfügbar sein, dann ist die beste Lösung fast immer, die App nativ zu Entwickeln. Soll sie auf mehreren Plattformen erscheinen, dann wird der Kostenfaktor meist zum treibenden Argument gegen eine plattformspezifische Entwicklung, auch wenn die Performance von Animationen und Benutzerinteraktionen nicht das Niveau von nativen Apps erreichen.

Kommen die Entscheidungsträger zu diesem Punkt, fällt die Entscheidung oft auf eine Web-App mit jQuery Mobile. Doch es gibt noch andere Frameworks auf dem Markt, welche mobile Optimierung anbieten. So zum Beispiel Sencha Touch oder MGWT.

Als Mobile-Entwickler bei Namics und während des Studiums habe ich meine Erfahrungen mit all den erwähnten Technologien gesammelt. Ich arbeitete an nativen Apps für iOS und Android sowie plattformunabhängigen Apps mit Sencha Touch, jQuery Mobile und GWT.

Im vorherigen Blogpost ging ich auf die Performance-Optimierung von GWT ein. In diesem Teil meiner Blog-Serie will ich diese drei Frameworks vergleichen und vertieft auf die Performance von MGWT eingehen.

(mehr …)

GWT Blog-Serie – Wie GWT die maximale Leistung des Browser nutzt (2/4)

Im ersten Teil meiner Serie ging ich auf eine Umfrage über die Zukunft von GWT ein und beschrieb in Kürze, was GWT ist.
Ab 100 Zeilen JavaScript Code soll GWT besser optimiert sein, als würde man den Code selber schreiben. In diesem Teil der Serie, werde ich dieser Aussage auf den Grund gehen.

Performance von GWT dank Compiler

Sobald eine Web Anwendung gebaut wird, welche mehr als 100 Zeilen JavaScript Code verwendet, kann man davon ausgehen, dass GWT den besseren Code auswirft als würde man den Code selber in JavaScript schreiben. Verblüffende Aussage nicht wahr? Ich würde von mir behaupten, dass ich in der Lage sei, bei einem JavaScript von lediglich 100 Zeilen Code, ein Script zu schreiben, welches keine Performance-Leaks umfasst. Doch warum sollte ein von GWT optimiertes JavaScript performanter sein? Der Grund liegt im Java-zu-JavaScript Compiler. Dieser Compiler beschränkt sich nicht darin, den Code perfekt zu minifizieren und zu strukturieren, er offeriert noch einiges mehr.

Features des GWT Compilers:

  • Compile per Browser/Device
  • Dead Code Removal
  • Inlining
  • Renaming
  • Zipping
  • Secure caching

Compile per Browser/Device

Damit die Performanceoptimierung für jeden Benutzer ausgereizt werden kann, wird das JavaScript für jeden unterstützten Browser kompiliert. Dieser kompilierte Code enthält dann alle verwendeten JavaScript und CSS Ressourcen, welche genau für diesen Browser notwendig sind.

browsers

Quelle: http://diminiinc.blogspot.ch/2013/08/windows-browsers-comparison-august-2013.html

(mehr …)