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 »

Saubere URL ohne Hash (#) mit AngularJS

AngularJS routet standardmäßig  über ein # in der URL. Der Browser sendet dadurch den HTTP-Request nur an den Teil vor dem #. Alles was nach dem # steht interpretiert AngularJS.

  • http://beispiel.de/
  • http://beispiel.de/#/firma
  • http://beispiel.de/#/kontakt

Will man eine saubere URL muss man Angular anweisen  die URL ohne # zu generieren. Auch für ein besseres Ranking bei den Suchmaschinen ist dieser Schritt notwendig.

Weiterlesen »

Single-Page-Application – individuelle Web-Anwendung für Unternehmen

Was ist eine Single-Page-Application?

Single-Page-Application (kurz SPA) oder auch Einzelseiten-Webanwendungen sind  Anwendungen, die aus einem einzigen HTML-Dokument bestehen. Diese Art von Webseite hat den Vorteil, dass Inhalte dynamisch nachgeladen werden. Gegenteilig hierzu steht das ursprüngliche Modell des Webs, dem Web 1.0. Hier war es üblich auf vielen unterschiedlichen Seiten mittels HTML-Links zu operieren, welche von einem Webserver ausgeliefert werden. Das bedeutet, dass bei jedem Klick auf einer Website eine neue Seite geladen wird. Jede Interaktion ist mit einer Anfrage an den Webserver verbunden. Beim Navigieren ersetzt die neue die alte Seite im Browser. Dieser Vorgang nennt sich page reload und ist sehr zeit- und rechenaufwendig. Bei Single-Page-Applications handelt es sich jedoch um eine webbasierte Anwendung, die rein technisch gesehen auf nur einer Seite stattfindet. Alle Inhalte werden über AJAX (Asynchronous JavaScript and XML) nachgeladen. Dies sorgt dafür, dass Benutzerinteraktionen im Hintergrund ausgeführt werden. In Single-Page-Applications sind bedingt durch Frameworks wie AngularJS sämtliche page reloads nicht mehr notwendig.

Weiterlesen »

Performante Seitenübergänge in Cordova- und PhoneGap-Apps

Ein immer aktuelles Thema im Bereich der hybriden App-Entwicklung sind möglichst nativ-wirkende Seitenübergänge bzw. Animationen. Im Ionic-Framework wird das Problem mit CSS-Animationen angegangen, was bei sehr großen Views zu einem Performance-Flaschenhals werden kann. Der Übergang hängt, ist langsam oder ruckelt kurz und schwupp ist die neue View zu sehen.

Weiterlesen »

iOS9-Fehler: Neues Update verursacht Probleme bei Web-& Hybrid-Apps – Lösungsansätze

Am 16. September ist es soweit und die neuste Version des mobilen Betriebssystems von Apple mit dem Namen iOS 9 wird an die Endnutzer verteilt. Jedoch zeichnen sich beim Test der Beta ein paar Probleme für die Entwicklung von Web-Apps, mobile Websites und hybrider Anwendung, insbesondere mit AngularJS und Ionic, ab.

Weiterlesen »

ngQuill: Unser AngularJS-Modul für den Text-Editor Quill

Ein bekanntes Problem bei der Erstellung eigener Webseiten und Web-Anwendung ist die Bereitstellung einer Funktionalität Benutzereingaben zu formatieren. Als Unternehmen waren wir auf der Suche nach einem möglichst einfachen und schlichten Rich-Text Editor, der standardmäßig nur die Grundfunktionalitäten zur Textformatierung mitbringt. Weiterlesen »

Ionic-Framework 1.0.0 – Endlich offiziell draußen

Endlich ist es so weit. Das Ionic-Team hat Ihrem Framework die 1.0.0 aufgedrückt. Nach 14-Beta Versionen und 5 Release-Candidates ist Ionic 1.0.0 unter dem Namen Uranium Unicorn erschienen.
Dieser Schritt war aber nicht nur aus Entwicklersicht wichtig, die mit Ionic arbeiten oder arbeiten wollen. Damit hat sich Ionic selbst den Weg für die nächste große Version Ionic Framework 2 geebnet, die auf AngularJS 2 basieren wird.

Die aktuellen Quellen gibt es wie immer auf code.ionicframework.com und in den GitHub-Repositories von driftyco.

play.ionic.com – Der Online Ionic Editor

Je tiefer ein Entwickler in eine Technologie eintaucht, umso häufiger wird er auf Probleme stoßen, die er auf die Schnelle nicht selbst lösen kann oder eine Möglichkeit braucht diese unkompliziert und effizient mit anderen zu teilen.

Für diese Anwendungsfälle eigenen sich besonders Online-Editoren. Im Bereich der Frontend-Webtechnologien sind Anbieter wie JSFiddle, Plunker oder CodePen bekannte Größen. Leider sind diese mit der Absicht entstanden jeglichen Frontend-Entwickler-Ansprüchen gerecht zu werden. Dadurch sind sie teilweise vollgestopft mit Zusatzfunktionalitäten, die das Arbeiten erleichtern können – aber nicht müssen.
Als Entwickler von mobilen Apps (vor allem mit Ionic) kann es schon recht mühselig sein bei den genannten Anbietern ein Beispielprojekt oder ein Testszenario aufzusetzen und diese am besten noch im mobilen Kontext anzeigen zu lassen.

Weiterlesen »

AngularJS 2.0: Google und Microsoft

Wie in unserem Artikel Road to AngularJS 2.0 beschrieben, steht schon ein vager Plan für die Umsetzung der neuen Version. Das AngularJS-Team hat sich viel vorgenommen, um einiges zur aktuellen Version besser zu machen.
Ein essenzieller Bestandteil der geplanten Neuerungen sollte die Verwendung der eigens entwickelten Script-Sprache AtScript werden. Die auf – Javascript basierende – Script-Sprache war als Erweiterung für die sehr ähnliche Sprache von Microsoft ‘TypeScript‘ gedacht.
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 »