2. August 2021
StartMagazinWas brauchst du für den Einstieg in die Android-Entwicklung?

Was brauchst du für den Einstieg in die Android-Entwicklung?

Wenn du Apps und Spiele für Android entwickeln möchtest wirst du schnell feststellen, dass verschiedene Wege nach Rom führen. Zum Beispiel hatten wir vor einiger Zeit in unserer Reihe „Wie macht man eigentlich ein Spiel“ aufgezeigt, wie man mit der Entwicklungsumgebung Unity3D ein Spiel entwickelt. Native Android-Apps hingegen entwickelt man vorzugsweise mit Android Studio. Was es hierbei noch zu beachten gibt, erfährst du in diesem Artikel.

Die Entwicklungsumgebung

Unter einer Entwicklungsumgebung, oder auch IDE genannt, versteht man ein Programm, dass dir verschiedene Werkzeuge bereitstellt, mit denen du eine App erstellen kannst und die dich bei der Programmierung unterstützen. Zum Beispiel werden dir Fehler in deinem Quellcode angezeigt, du hast die Möglichkeit deine App in einem Emulator laufen zu lassen, oder du nutzt den Debugger, um deine App bzw. deinen Quellcode zeilenweise zu testen. Am Ende erstellst du über die Entwicklungsumgebung deine fertige App, die du dann im Google Play Store hochladen kannst. Für die native Android-Entwicklung steht dir Android Studio zur Verfügung, die du direkt bei Google herunterladen kannst.

Die Programmiersprachen

Es gibt verschiedene Programmiersprachen, mit denen du Android-Apps entwickeln kannst. Bei Android ist der Platzhirsch die objektorientierte Programmiersprache Java. Auf Android-Geräten wandelt die Dalvik Virtual Machine den Java Code in Bytecode um, welcher dann vom Prozessor interpretiert wird. Ab Android Version 5.0 wurde die Dalvik Virtual Machine durch eine Android Runtime ersetzt. Dadurch ergeben sich Vorteile wie zum Beispiel die geringere Prozessorlast und auch der schnellere Start von Apps.

Vor ein paar Jahren präsentierte Google auf seiner Entwicklerkonferenz Google I/O die Integration von Kotlin in Android Studio. Kotlin ist dabei kompatibel mit Java. Das bedeutet, dass du Java Code problemlos in Kotlin-Projekten einbinden und verwenden kannst. Der Nachteil an Kotlin, was zudem auch gleich der Vorteil von Java ist: Trotz wachsender Beliebtheit existieren Beispielcodes und Referenzen bei Kotlin im Gegensatz zu Java nur spärlich.

Programmiersprache erlernen

Es gibt verschiedene Möglichkeiten an die Sache heranzugehen. Hierbei kommt es auch ganz darauf an, was für ein Typ des Lernens du bist. Manche fahren am besten, wenn sie sich ein Buch über Android-Entwicklung kaufen und dieses durcharbeiten. Andere wiederum kommen besser mit YouTube-Videos zurecht, wo der Einstieg kostengünstig ist, man jedoch bei Rückfragen selbst recherchieren muss. Auch ist hier die Gefahr größer etwas „falsch“ zu lernen. Oder du entscheidest dich für Programmierer Kurse, wie zum Beispiel der Kurs App Android Entwicklung mit Java und Kotlin, bei denen du mit professioneller Anleitung dein Wissen aufbaust. Ebenso hast du hier immer die Möglichkeit Fragen sofort beantwortet zu bekommen.

Zwei Kernbereiche bei der nativen Entwicklung

Wenn du eine Android-App nativ entwickelst, teilt sich dies in der Entwicklungsumgebung in zwei Bereiche auf. Beim ersten Bereich geht es um das Aussehen der App, also in welcher Art und Weise sich die App auf deinem Smartphone darstellt. Hier findest du den Ordner Ressourcen. Dieser beinhaltet die folgenden Ordner (hier die wichtigsten):

res/drawable
Hier legst du sämtliche Grafiken und Logos ab, die in deiner App verwendet werden sollen. Also zum Beispiel das App-Logo, Grafiken für Checkboxen, für soziale Netzwerke oder Buttons.

res/layout
Unter diesem Punkt definierst du das Aussehen und die einzelnen Elemente der Oberfläche. Wenn du die App zum Beispiel das erste Mal startest erscheint die „Startseite“. Für diese Startseite legst hier im Layout-Ordner eine Datei im XML-Format an. Du definierst nun, wo auf dem Display Buttons, Schaltflächen und Texte angezeigt werden sollen.

Du kannst das Layout natürlich auch über Drag&Drop erstellen. In der Palette findest du sämtliche Elemente, die dir in Android zur Verfügung stehen.

/res/values
In diesem Ordner befinden sich weitere XML-Dateien. Einmal kannst du hier die Farben festlegen, die für die Programmierung in der App zur Verfügung stehen sollen, oder aber du pflegst hier die Anzeigetexte für Labels in mehreren Sprachen.

Beim zweiten Bereich handelt es sich um die Klassen für die Programmiersprache Java (bzw. Kotlin). Du definierst im Layout-Teil also das Aussehen der App. Im Java-Teil programmierst du das Verhalten der einzelnen Elemente dann aus. Zum Beispiel sagst du im Layout, du möchtest eine Auswahlbox auf einer Seite darstellen. Dieser vergibst du dann eine eindeutige ID. Im Java-Teil kannst du nun auf das Element mittels dieser eindeutigen ID zugreifen und die Auswahlbox mit Werten füllen bzw. ebenfalls bestimmen, was mit einem selektierten Element passieren soll.

Nativ entwickeln oder Cross-Plattform nutzen

Nativ entwickeln bedeutet hier, dass du direkt in Android Studio programmierst. Hier hast du die größtmögliche Freiheit an verwendeten Schnittstellen bzw. Bibliotheken und du kannst sichergehen, dass deine App eine gute Performance aufweist und schnell auf den Endgeräten laufen wird. Möchtest du deine App aber nicht nur für Android zur Verfügung stellen, sondern z.B. auch für Apples iOs, dann kannst du die App auf Apple IDE XCode entweder noch einmal neu entwickeln, oder du nutzt eine Cross-Plattform.

Der Vorteil einer Cross-Plattform ist, dass du den Quellcode einmal schreibt und die App dann für die jeweilige Plattform (Android/iOs) bereitstellst. Der Nachteil ist hier, dass dir weniger Komponenten und Bibliotheken zur Verfügung stehen, als wenn du die App nativ entwickelst. Eine der bekanntesten Cross-Plattformen stellt z.B. Xamarin dar.

Alternativen

Es gibt noch Alternativen für den Fall, solltest du weniger Interesse daran haben, eine Programmiersprache zu erlernen. Mit dem App Inventor sollst du Apps ohne Programmierkenntnisse entwickeln können. Am Ende purzelt hier eine App heraus, die funktionsfähig ist. Jedoch wird diese im Vergleich zu nativen Apps eher eingeschränkte Möglichkeiten bieten.

Fazit

Es gibt mittlerweile viele Möglichkeiten, um eine App zu entwickeln. Selbst wenn du nur mal reinschnuppern möchtest, bieten dir verschiedene Tools nach dem Baukastenprinzip bereits schnelle Erfolge. Wenn du dich jedoch tiefgehender mit der Materie auseinandersetzen möchtest, kommst du an der nativen Entwicklung nicht vorbei. Hier ist es empfehlenswert für den Einstieg einen professionell geführten Kurs zu besuchen.

1 KOMMENTAR

HINTERLASSEN SIE EINE ANTWORT

Please enter your comment!
Please enter your name here

EMPFEHLUNGEN DER REDAKTION

MAGAZIN

APPS & SPIELE

Android User