Apps bauen mit Jasonette – Ein Erfahrungsbericht

Das Entwickeln von Apps ist vielerorts bereits fest im Alltag verankert und besitzt für zahlreiche Unternehmen einen nicht unerheblichen Stellenwert. So müssen Unternehmen mit wenig Affinität in der Webprogrammierung für diese Vorhaben Experten einstellen oder die Entwicklung der App an Dienstleister outsourcen. Ebenso versuchen sich immer mehr Hobby-Programmierer an dem Erstellen von mobilen Applikationen, was jedoch oft Programmierkenntnisse voraussetzt. Nun könnte jedoch Jasonette als Senkrechtstarter für eine kleine Revolution bezüglich der Erstellung von nativen Apps sorgen. Wir, eine Gruppe von Studenten an der Hochschule Mannheim im Studiengang Unternehmens- und Wirtschaftsinformatik, haben den Selbstversuch gewagt.

Einfach, Einfacher, Jasonette?

Jasonette ist ein Framework im Baukastenprinzip für native Apps und deren Komponenten, welches verspricht das Erstellen eben dieser möglichst zu vereinfachen. Es soll ohne explizite Programmierkenntnisse möglich sein Apps innerhalb von Minuten zu programmieren. Dies wird realisiert indem, anders als in der „traditionellen“ App-Entwicklung, nur eine einzige JSON-Datei und der dazugehörige Jasonette-Container App benötigt werden. D. h. im Umkehrschluss, dass die Apps nur noch zusammengebaut (konfiguriert) und nicht mehr programmiert werden muss.

Code Beispiel

JSON Beispiel in Jasonette

Das Prinzip hinter Jasonette ist sehr einfach. Das Framework liefert für iOS und Android eine sogenannte Container-App, in der Metadaten wie Name, Beschreibung und Icons hinterlegt werden können. Auch die URL der JSON-Datei wird den Metadaten beigefügt. Nach dem Öffnen der Container-App lädt diese die JSON-Datei über http/https. Die Darstellung der App erfolgt anhand der JSON-Datei, die Struktur, Funktionsweise und die selbst erstellten Inhalte vorgibt. JSON fungiert hier als Beschreibungssprache, ähnlich wie HTML für Webseiten.

Da die Container-App die Baumstruktur interpretieren muss und somit auf vordefinierte Funktionsweisen angewiesen ist, können keine neuen Funktionen mit Jasonette umgesetzt werden. Der angegebene Funktionsumfang garantiert die wichtigsten und gängigsten Funktionen vorgefertigt zu enthalten. Kamera Zugriff, Eingabefelder, Banner, Slider, Scrollen horizontal und vertikal, sind nur kleiner Ausschnitt der möglichen Funktionen. Die meisten Apps sollten also ohne Probleme und Umstellungen erstellbar sein.

Selbstversuch

In einer Gruppe aus Studenten, mit verschiedensten Kenntnissen und Voraussetzungen, machten wir uns an den Selbstversuch, eine Applikation für Android und iOS zu bauen. Unser Ziel war die Erstellung eines Prototyps einer mobilen App für Studieninteressierte des Studiengangs für Unternehmens- & Wirtschaftsinformatik an der Hochschule Mannheim. Anhand unserer Eindrücke und unserer parallel laufenden Evaluation zu Jasonette, wollen wir hier ein kleines Feedback für dich zur Verfügung stellen.

Entsprechend des typischen Ablaufs des Entwicklungsprozesses, sprich nach der Anforderungsdefinition und den groben Designentscheidungen trafen wir die nötigen Vorbereitungen (Download und Installation). Und schon ging es los!

Durch eine kleine Einführung, die vielen Vorschläge, die Jasonette bereithält und durch das offizielle Git-Repository, in dem bereits fertige Beispielkomponenten bereitgestellt werden, entsteht schnell und einfach ein guter Überblick über die gebotenen Möglichkeiten des Frameworks. Nach den ersten Gehversuchen mit Jasonette fühlten wir uns sich sofort vertraut und verstanden sehr schnell das Prinzip hinter dem Framework. Einfach eine vorgefertigte Komponente übernehmen und nach seinen Vorstellungen anpassen. Und siehe da, nach bereits wenigen Minuten waren Header und Footer inklusive Icons erstellt. Geradezu simpel lassen sich die angedachten Funktionen nacheinander „erbauen“.

So war die erste Version App in wenigen Stunden komplett zusammengestellt. Jedoch mussten wir feststellen, dass Jasonette schnell an seine Grenzen kommt, da die Anzahl der Möglichkeiten an Komponenten bzw. Funktionen (noch?) schnell erschöpft ist. Die Einschränkungen sind zum Teil signifikant. So war es mit mehrmaligen Versuchen nicht möglich, das angedachte Logo an die von uns gewünschte Position im Header zu positionieren.

Das Testen der App ließ sich schnell realisieren. Einfach die JSON-Datei als Apk-Datei über den bereitgestellten Link downloaden und schon ist es möglich, die App zu testen und zu nutzen. Allerdings fiel auf, dass das Debuggen nicht wirklich vorhanden ist. Weder die mögliche Fehlerquelle wird angezeigt, noch werden Tipps bezüglich der Verbesserung vorgeschlagen oder eine Syntaxprüfung durchgeführt. So müssen Fehler durch akribisches Suchen, Codezeile für Codezeile, gefunden werden.

Auch die angepriesene, plattformübergreifende Entwicklung der App stellte sich als Problem heraus. Zunächst entwickelten wir die App für Android. Nachdem die nötigen Schritte für die iOS Applikation durchgeführt waren und wir die App öffnen wollten, fiel auf, dass die Inhalte komplett falsch angezeigt wurden bzw. die Position der Inhalte nicht stimmte. In der kurzen zur Verfügung stehenden Zeit und durch das fehlende Debugging, war es jedoch noch nicht möglich, den Fehler ausfindig zu machen und zu beheben.

Bild1

Selbst erstellte Startseite nach wenigen Minuten

Fazit & Ausblick

Nach dem mehrtägigen Testversuch konnten wir viele Eindrücke zu Jasonette gewinnen. Die versprochene Einfachheit ist an allen Ecken zu spüren. Ohne Aufwand die vorgefertigten Komponenten übernehmen und mit flinken Fingern in wenigen Minuten an die individuellen Wünsche anpassen. Es werden keine Programmierkenntnisse à la Swift benötigt. Jedoch sollten Kenntnisse zu JSON vorhanden sein um an der ein oder anderen Stellen nicht überrascht zu werden.

Doch dieses einfache Prinzip hat seinen Preis. Durch die Baumstruktur ist man auf die zur Verfügung gestellten Komponenten angewiesen und diese sind nicht so zahlreich wie erhofft. Wir stießen schnell an die Grenzen von Jasonette wie zum Beispiel beim individuellen Positionieren von selbst erstelltem Inhalt. Positiv ist Jasonette anzurechnen, dass es über eine sehr gute Dokumentation verfügt. Die erstellte JSON-Datei kann extern auf einem Server liegen und ist so ohne App-Update veränderbar und aktualisierbar. Wer keinen eigenen Server zur Verfügung hat, kann sogar den eigenen Jasonette „JSON-Hosting Server“ (Jasonbase.com) nutzen, um seine Dateien bereitzustellen. So können Anschaffungskosten für Server eingespart werden.

Alles in allem ist der kostenlose Dienst Jasonette ein kleiner aber kein großer Fortschritt in der nativen App-Entwicklung. Das Prinzip an sich ist zukunftsweisend für das Erstellen von Apps. Jedoch erscheint Jasonette noch zu unausgereift. An zu vielen Stellen klemmt es noch und durch die oft verzweifelte Fehlersuche macht selbst erfahrenen Entwicklern keinen Spaß. Sollten jedoch im Laufe der Zeit weitere Komponenten hinzukommen, das Debuggen verbessert werden und die versprochene plattformübergreifende Entwicklung laufen, könnten in baldiger Zukunft viele Interessengruppen profitieren und ihre Apps ohne großen Aufwand und wenig Einsatz von finanziellen Mitteln bequem mit Jasonette zusammenbauen.

Unserer Meinung können kleine Applikationen mit Jasonette erstellt werden und bieten Hobbyprogrammierer einen guten Einstieg. Für den professionellen Einsatz in Unternehmen empfehlen wir jedoch, trotz höherer Kosten, noch die klassische Programmierung.

Falls Euch der Beitrag gefallen hat oder Ihr Anregungen habt, lasst gerne einen Kommentar da.

Quellen

[1] http://jasonette.com/

[2] http://t3n.de/news/baukasten-fuer-apps-813817/

Advertisements

3 Antworten zu “Apps bauen mit Jasonette – Ein Erfahrungsbericht

  1. Pingback: Apps bauen mit jasonette – ein Erfahrungsbericht | E-Business·

  2. Pingback: Das war das Sommersemester 2017! | E-Business·

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s