Apps programmieren für Anfänger
Sie möchten also eigene Apps programmieren und diese dann in einem AppStore ihrer Wahl veröffentlichen. Aber hat schon Zeit sich viele lange Tutorials anzuschauen und sich dann mit Problemen rumzuschlagen, die nicht im Tutorial beschrieben wurden. In diesem Artikel erfahren sie alles um den nächsten Schritt beim Programmieren von Apps fürs Smartphone zu vollziehen. Was müssen sie lernen? Auf welchen Plattformen kann man entwickeln? Sie suchen Antworten auf diese Fragen, hier bekommen sie diese und starten mit der Entwicklung eigener Apps.
Apps programmieren, aber was ist das eigentllich?
Apps sind eigentlich normale Computerprogramme, die allerdings auf einem mobilen Gerät ausgeführt werden. Ihre Funktionen können dabei variabel sein z.B.: Für einen Kommentar zur Aktuellen politischen Lage oder auch einfach nur eine kalendarische APP für ein Foto Studio. Sie besitzen die Besonderheit, auf die Sensorik und Hardware des Geräts zugreifen zu können. Um diese nutzen zu könne stellen die Hersteller sogenannte Programmierbibliotheken zur Verfügung. Mit ihnen kann man die Hardware in seinen Apps ansprechen. Der Touchscreen, dass Merkmal des Smartphones. Als Programmierer müssen ihre Apps darauf auslegen, dass sie über diesen Bildschirm benutzt und skaliert werden können. Wenn dies erfüllt wird ist eine App oder eine Webseite responsive, was dem momentanen Standard entspricht.
Welche Plattform möchten sie bedienen?
Eines müssen sie wissen, leider existiert kein Universalsystem! Alle Hersteller nutzen unterschiedliche Betriebssysteme, die nicht kompatibel zu einander sind. Wollen sie nun eine z.B. eine App mit Kommentar Funktion für das Iphone erstellen müssen sie über spezifisches Wissen für diese Umgebung verfügen. Aber kommen wir zu den einzelnen Plattformen:
Android
Google’s Android; eines der meistgenutzten Betriebssysteme für mobile Geräte. Viele Hersteller wie Samsung, Sony, etc. produzieren ihr Geräte mit Android.
Im Play-Store direkt von Google in dem man die Apps findet und auf das eigene Gerät installieren kann werden die Applikationen veröffentlicht. Es existieren aber auch weitere Stores in denen mancAndroid oder iOS Apps erhält. So hat meist jeder Hersteller und auch große Unternehmen einen eigenen Store. Um dort zu veröffentlichen muss man sich als Entwickler anmelden. Bei Google kostet das eine einmalige Gebühr und dann kann man seine Apps dort zum Download oder zum Verkauf anbieten. Wird eine App verkauft, behält der Storebetreiber meist eine kleine Provision ein. Um für die Android Plattform zu entwickeln muss man man Java lernen und das Android SDK installieren.
iOS
iOS von Apple ist das Betriebssystem für das iPhone, iPad und iPod. Es gibt keinen Hersteller, der dieses Betriebssystem nutzt, außer Apple selbst. Die Apps erhält man über den sogenannten AppStore bzw. iTunes. Um Apps für diesen Store zu entwickeln muss man sich im Apple Developer Programm registrieren und eine jährliche Gebühr zahlen. Es fallen beim Verkauf von Apps Zahlungen an Apple an. Um hier zu programmieren benötigt man einen Apple Computer mit Mac OSX, nur hier existiert die Programmierumgebung XCode. Als Sprache wird entweder mit Objective-C oder den neuen Apple-eigenen Programmiersprache Swift gearbeitet
Andere Plattformen
Neben diesen zwei wohl Bekanntesten gibt es aber auch noch weitere Marktteilnehmer wie Blackberry und das Windows Phone mit verschiedene Betriebssystemen. Alle haben ihre eigene Programmierumgebung, nutzen eine andere Programmiersprachen und haben auch eigene Stores.
App-Arten
Native Apps
Native Apps sind mit der Programmiersprache des Herstellers geschrieben, siehe vorangegangene Plattform. Lernen müssen sie zunächst das Programmieren in der jeweiligen Sprache des Herstellers für den sie ihre App erstellen möchten. Um ihre künftige App also universell zugängig zu machen müssen sie für jede Plattform die jeweilige Sprache und Umgebung erlernen und umsetzten. Dies kann sehr aufwendig werden sofern sie nicht ein Entwickler Studio mit einem kompletten Team im Rücken haben.
Web Apps
Diese Apps, auch HTML5 Apps genannt, sind plattformübergreifende Anwendungen, die meistens im Browser laufen. Jedes moderne Smartphone besitzt einen Internet-Browse, somit können Web Apps auf allen Plattformen genutzt werden. Im Hintergrund stehen die üblichen Web Technologien wie HTML5, CSS, JavaScript. Durch starke Verbreitung von HTML5 ist mittlerweile die Grenze zwischen den Web Apps und „normalen“ Websites ziemlich fließend.
Hybride Apps
Wie im Name beschrieben, sind solche Apps eine Kombination von den beiden Formen und ein Versuch das Beste beider Arten in einer Anwendung zu installieren. Hybride Apps basieren auf den Web Technologien wie HTML5, CSS, JavaScript, laufen aber in einem Webview Container, sind als native Apps verpackt und können somit auf native APIs und Funktionen vom Betriebssystem zugreifen. Hybride Apps werden ebenfalls über den App Store verteilt.
Vorsicht! Baukasten Apps
Das bauchen sie für ihren Start:
Unser Vorschlag an sie: Sollten sie noch gar keine Kenntnisse vom Programmieren haben, dann starten sie mit der Webentwicklung und mit Javascript. Damit erlernen sie die Grundlagen. Mit Javascript lassen sich gerade zu Anfang viele Erfolge erzielen. Nutzen sie Ratgeber oder auch kurze Tutorials von verlässlichen Quellen z.B.: Vom Android Developer Programm; hier der Link: https://developer.android.com/training/basics/firstapp/index.html. Programmieren sie nicht einfach drauf los, erarbeiten sie zunächst eine Wissenbasis. Von dort an arbeiten sie gezielt weiter, und eventuell steht schon bald unter Ihrer App herausragend bewertender Kommentar. Zu guter letzt sollten sie immer auf dem aktuellen Stand der Plattformen bleiben, dazu hier eine Tabelle mit allen Versionen von Android und Supportstatus:
Name | Veröffentlichung | Supportstatus |
Android 1.0 | September 23, 2008 | Unsupported |
Android 1.1 | February 9, 2009 | Unsupported |
Android 1.5 | April 27, 2009 | Unsupported |
Android 1.6 | September 15, 2009 | Unsupported |
Android 2.0 – 2.1 | October 26, 2009 | Unsupported |
Android 2.2 – 2.2.3 | May 20, 2010 | Unsupported |
Android 2.3 – 2.3.7 | December 6, 2010 | Unsupported |
Android 3.0 – 3.2.6 | February 22, 2011 | Unsupported |
Android 4.0 – 4.0.4 | October 18, 2011 | Unsupported |
Android 4.1 – 4.3.1 | July 9, 2012 | Unsupported |
Android 4.4 – 4.4.4 | October 31, 2013 | Unsupported |
Android 5.0 – 5.1.1 | November 12, 2014 | 5.1.x Supported |
Android 6.0 – 6.0.1 | October 5, 2015 | Supported |
Android 7.0 – 7.1.2 | August 22, 2016 | Supported |
Android 8.0 – 8.1 | August 21, 2017 | Supported |