App erstellen lassen — Das solltest du wissen!

Auf dem Weg zu deiner eigenen App, gilt es viele Hürden zu überwinden und das fällt leichter mit dem entsprechenden Hintergrundwissen. In vorherigen Blogartikeln, habe ich bereits erklärt, wie sich die Kosten einer App Entwicklung zusammensetzen und wann man eher eine Agentur oder einen Freelancer mit der Entwicklung beauftragen sollte. Dieser Artikel soll, das Ganze etwas abrunden und dir noch ein weitere Tipps und Tricks an die Hand geben, bevor du deine erste App in Auftrag gibst.

Native vs. Cross-Platform

Die Wahl zwischen einer nativen App oder einer Cross-Platform App ist die Wohl wichtigste Entscheidung, die du als Auftraggeber vollbringen musst. In der Regel hilft dir die beauftragte App Agentur oder der beauftragte Freelancer. Dennoch solltest du beide Arten der App Entwicklung zumindest schon mal gehört haben.

Unter nativer Entwicklung ist zu verstehen, dass eine App perfekt an ein bestimmtes Betriebssystem wie Android oder iOS angepasst wird und dann nur dort lauffähig ist. Eine nativ für Android entwickelte App ist also auf iOS nicht lauffähig und umgekehrt.

Die native Entwicklung bietet den grundsätzlichen Vorteil, dass die Hardware auf dem Zielsystem bestmöglich genutzt werden kann. Eine spezielle Anpassung zum Beispiel an die Möglichkeiten des Hauptprozessors oder der Grafikeinheit ist hier leichter möglich. Das bringt Performance Vorteile mit sich. Native Apps werden daher häufig gewählt, wenn es sich um leistungshungrige Anwendungen handelt. In der Praxis bedeutet das aber auch, dass du für jede gewünschte Plattform einen eigenen Entwickler anstellen musst. Das treibt natürlich die Kosten nach oben.

Bitte ebenfalls im Hinterkopf behalten: Der Pflegeaufwand einer nativen App ist ebenfalls doppelt so hoch, wie der bei einer Cross-Platform-Entwicklung. Werden neue Funktionen benötigt, müssen diese bei einer nativen Entwicklung, sowohl für iOS als auch für Android umgesetzt werden. Den erhöhten Koordinationsaufwand zwischen dem iOS und Android Entwickler darf man ebenfalls nicht unterschätzen.

Cross-Platform: HTML Apps vs. Flutter

Um diese Dilemma zu umgehen, kann man auf Cross-Platform-Frameworks setzten. Apps, welche mit solch einem Framework entwickelt werden, können sowohl auf Android als auch auf iOS Geräten laufen. Im Gegensatz zu nativen Apps, bei denen zwei Apps separat für Android und iOS entwickelt werden, muss man mit Cross-Platform-Frameworks die App nur einmal programmieren. Selbstverständlich schlägt sich dies auch im Preis nieder. Dieser reduziert sich um ca. 40%.

Bei Cross-Platform-Apps, sollte man jedoch wieder zwischen zwei verschiedenen Arten unterscheiden. Den HTML Apps und den Flutter Apps. (Es gibt noch weitere Frameworks, wie z.B. Xamarin, welche allerdings nicht so weit verbreitet und eher in spezielleren Fällen die ideale Lösung sind. Xamarin eignet sich z.B. wenn schon Kompetenzen in der Programmiersprache C# vorhanden sind.)

HTML Apps

HTML Apps sind zurzeit der gängige Weg eine Cross-Platform-App zu entwickeln und auf den Markt zu bringen. Eine HTML App, ist im Grunde genommen eine App in der ein Internet Browser läuft. Im Browser läuft dann eine auf Smartphones optimierte Website. Außerdem werden die Benutzerelemente, wie z.B. URL-Leiste oder Zurück-Button ausgeblendet, um dem Benutzer das Gefühl zu geben, dass er eine App und keine mobile Website bedient.

1_DdcDZ2H-6SOlbT68AKMyAQ.png

Vorteile von HTML Apps:

  • Es gibt viele Entwickler, die sich mit dieser Art der App Entwicklung auskennen.

  • Wird noch eine Web Version der App benötigt, dann kann diese ohne viel Mehraufwand ebenfalls bereitgestellt werden.

  • Flexibel im Design

Nachteile von HTML Apps:

  • Aufwändiger Projektstart

  • Für manche Projekte ist die Performance zu niedrig.

  • Oft fühlt man beim Verwenden der App, dass es sich nicht um eine native App handelt.

Flutter

In unserer Agentur, verwenden wir das Framework Flutter. Die erste stabile Version dieses Frameworks wurde erst im Dezember 2018 veröffentlicht. Trotzdem steht hinter diesem Projekt eine unvorstellbar große Entwickler Community und viele große Tech-Giganten wie Alibaba, Tencent und Google selbst, setzen auf dieses Framework. Eine schier unendliche Liste an Apps, die mit Flutter entwickelt worden sind findest du hier.

Diese App wurde mit Flutter entwickelt.

Diese App wurde mit Flutter entwickelt.

Das die Nachfrage diese Frameworks so unglaublich hoch ist, hat mehrere Gründe:

  • Eine große Entwickler Community

  • Es wird von einer großen Firma, nämlich Google vorangetrieben.

  • Flutter beschleunigt den Entwicklungsprozess. Im Vergleich zu HTML Apps ist die Entwicklungszeit mit Flutter nochmals geringer.

  • Hohe Performance

  • Flexibel im Design

  • Einfacher Projektstart

  • Kaum von einer nativen App zu unterscheiden.

  • Mit dem Projekt Hummingbird, wird es in naher Zukunft möglich sein, Flutter Apps im Browser, quasi als Website, laufen zu lassen.

Nachteil:

  • Zwar gibt es schon eine große Community, trotzdem ist vielen Entwicklern dieses Framework noch fremd.

App erstellen lassen — Das Lastenheft

Wenn du eine neue App erstellen lassen willst, hast du anfänglich natürlich große Erwartungen. Häufig ist es aber gar nicht so einfach, dem Entwickler die eigenen Vorstellungen von der App richtig zu vermitteln. Hier empfehle ich dir ein Lastenheft anzulegen. Dieses Lastenheft soll die App mit all Ihren Funktionen beschreiben. Für uns Entwickler machst du es besonders leicht, wenn du Skizzen jeder Seite deiner App machst. Das gibt uns Entwicklern ein Gefühl, wie das fertige Produkt aussehen soll. In der Praxis hat es sich bewährt, wenn du das Konzept bei mehreren Agenturen einreichst und die verschiedenen Antworten, Kostenvorschläge und die Beratung vergleichst. So kannst du viele Angebote einholen, ohne immer wieder alles erklären zu müssen. Desweiteren hilft das Lastenheft, das Pflichtenheft und den Vertrag auszuarbeiten.

Rechtliches

Kläre in jedem Fall wichtige rechtliche Fragen ab. Zum Beispiel in Bezug auf das Eigentum am Quellcode. Auch wenn es eher selten vorkommt, sehen manche Agenturen bei ihren Angeboten nämlich vor, dass sie die Eigentümer am Quellcode bleiben und das Eigentum nicht an den Auftraggeber übergeht.

1_1-o5sfWSMHTCPiJTOWbDrQ.jpeg

App Store Richtlinien

Planst du deine App im Google Play Store oder im Apple Appstore zu veröffentlichen? Wenn ja, solltest du unbedingt, prüfen ob deine App gegen die Richtlinien der Stores verstößt. Während die Richtlinien vom Playstore recht locker sind, muss man mit sehr strikten Richtlinien bei Apple rechnen.

Um ein paar Beispiele zu nenne (Nur bezogen auf den Apple Appstore):

  • Apple verbietet Apps, welche einen zu geringen Nutzen für User haben

  • Apps, welche bereits extrem viel Konkurrenz im Appstore haben, können ebenfalls abgelehnt werden

  • Apps, welche hauptsächlich zur Vermarktung einer Firma erstellt wurden, können abgelehnt werden

  • usw.

Aus diesem Grund lege ich dir wärmstens ans Herz, dass du dir die Richtlinien der Appstores einmal durchliest.

Ursprünglich veröffentlicht auf medium.com: App erstellen lassen — Das solltest du wissen!