Einleitung
Android? Ist das nicht so etwas wie eine Mensch-Maschine? Ein Roboter, der einem Menschen (täuschend) ähnlich sieht? Ja, und gleichzeitig der Name eines Betriebssystems, das Google entwickelt hat und kostenfrei zur Verfügung stellt.
Während man Windows vorwiegend auf »großen« PCs findet, ist Android auf Smartphones und Tablets am meisten verbreitet. Rund Dreiviertel aller Handys (wie man sie auch immer noch nennt) laufen mit dem Android-System.
Computer sind sie eigentlich alle: Geräte, die man auf oder unter den Tisch stellt (Desktop-PCs), Geräte, die man mitnehmen kann (Notebooks und Tablets), und dann noch eine Nummer kleiner: die Smartphones.
Vorwiegend um Android für Smartphones geht es hier. Die meisten Projekte funktionieren aber auch auf Tablets. Programme für dieses System werden meisten kurz Apps genannt (als Abkürzung für Applikationen).
Was heißt eigentlich Programmieren?
Wenn du aufschreibst, was ein Computer tun soll, nennt man das Programmieren. Das Tolle daran ist, dass du selbst bestimmen kannst, was getan werden soll. Lässt du dein Programm laufen, macht der Computer die Sachen, die du ausgeheckt hast. Natürlich wird er dann nicht dein Zimmer aufräumen und dir auch keine Tasse Kakao ans Bett bringen. Aber kannst du erst mal programmieren, kannst du den Computer sozusagen nach deiner Pfeife tanzen lassen.
Allerdings passiert es gerade beim Programmieren, dass der Computer nicht so will, wie du es gerne hättest. Meistens ist das ein Fehler im Programm. Das Problem kann aber auch irgendwo anders im Computer oder im Betriebssystem liegen. Das Dumme bei Fehlern ist, dass sie sich gern so gut verstecken, dass die Suche danach schon manchen Programmierer zur Verzweiflung gebracht hat.
Vielleicht hast du nun trotzdem Lust bekommen, das Programmieren zu erlernen. Und ausgerechnet noch für die »ganz Kleinen«. Dann brauchst du ja nur noch eine passende Entwicklungsumgebung, und schon kann’s losgehen.
Was ist eine Entwicklungsumgebung?
Um ein Programm zu erstellen, musst du erst etwas eintippen. Das ist wie bei einem Brief oder einer Geschichte, die man schreibt. Das Textprogramm dafür kann sehr einfach sein, weil es ja nicht auf eine besondere Schrift oder Darstellung ankommt wie bei einem Brief oder einem Referat. So etwas wird Editor genannt.
Ist das Programm eingetippt, kann es der Computer nicht einfach lesen und ausführen. Jetzt muss es so übersetzt werden, dass der PC versteht, was du von ihm willst. Weil er aber eine ganz andere Sprache spricht als du, muss ein Dolmetscher her.
Du programmierst in einer Sprache, die du verstehst, und der Dolmetscher übersetzt es so, dass es dem Computer verständlich wird. So etwas heißt dann Compiler.
Im Prinzip kann man für Android mehrere Programmiersprachen benutzen, am meisten verbreitet ist Java. Hier gibt es als Dolmetscher die Java Virtual Machine (kurz JVM). Diese Art »Zwischencomputer« lässt sich kostenlos installieren.
Eigentlich wird ein Java-Programm also an die JVM weitergereicht, die es dann für den jeweiligen Computer passend zubereitet: Das kann ein PC z.B. mit Windows sein. Oder ein Smartphone z.B. mit Android. Ein und dasselbe Java-Programm kann so im Prinzip auf jedem beliebigen Gerät funktionieren, das über eine JVM verfügt.
Schließlich müssen Programme getestet, überarbeitet, verbessert, wieder getestet und weiterentwickelt werden. Dazu gibt es noch einige zusätzliche Hilfen. Daraus wird dann ein ganzes System, die Entwicklungsumgebung.
Warum gerade Java?
Leider kannst du nicht einfach programmieren, wie dir der Mund gewachsen ist. Eine Programmiersprache muss so aufgebaut sein, dass möglichst viele Menschen in möglichst vielen Ländern einheitlich damit umgehen können.
Weil in der ganzen Welt Leute zu finden sind, die wenigstens ein paar Brocken Englisch können, besteht auch fast jede Programmiersprache aus englischen Wörtern. Es gab auch immer mal Versuche, z.B. in Deutsch zu programmieren, aber meistens klingen die Wörter dort so künstlich, dass man lieber wieder aufs Englische zurückgreift.
Eigentlich wäre es egal, welche Programmiersprache du benutzt. Am besten eine, die möglichst leicht zu erlernen ist. Doch in der Android-Welt ist die Nummer 1 die Programmiersprache Java, mit der du es auch in diesem Buch zu tun hast. Diese gehört inzwischen zu den am meisten verbreiteten Sprachen im Computer-Bereich. Sie ist nicht einfach, aber auch für Anfänger geeignet, die mit Java ihre erste Programmiersprache lernen wollen. Und: Es ist eine Sprache, die Smartphones und Tablets mit Android gut verstehen.
In letzter Zeit hat sich mit Kotlin eine neue Sprache verbreitet, die man auch unter Android Studio benutzen kann. Wir bleiben hier jedoch bei Java.
Der Weg zum guten Programmierer kann ganz schön steinig sein. Nicht selten kommt es vor, dass man die Lust verliert, weil einfach gar nichts klappen will. Das Programm tut etwas ganz anderes, man kann den Fehler nicht finden und man fragt sich: Wozu soll ich eigentlich programmieren lernen, wo es doch schon genug Apps gibt? Und dann noch ausgerechnet für Android. Aber du verspürst da einen Reiz, eigene Apps zu schreiben? Es ist also nicht nur einen Versuch wert, es kann sich durchaus lohnen, das Programmieren zu erlernen.
Android Studio, die Entwicklungsumgebung zum Buch
Um den Kauf einer Entwicklungsumgebung für Java und für Android musst du dich nicht kümmern, beides bekommst du kostenlos aus dem Internet.
Google stellt dir Android Studio zur Verfügung, eine komfortable und leistungsstarke Entwicklungsumgebung, mit der du unter allen Versionen von Windows programmieren kannst. Android Studio macht es auch möglich, Smartphones und Tablets zu simulieren und damit alle Apps erst mal auf dem PC unter Windows zu testen.
Wie man Android Studio und Java aus dem Internet holt und installiert, erfährst du in Anhang A.
Und was bietet dieses Buch?
Über eine ganze Reihe von Kapiteln verteilt lernst du
die Grundlagen der Programmierung kennen
mit Android Studio unter Windows umzugehen
mit Komponenten zu arbeiten (das sind Bausteine, mit denen du dir viel Programmierarbeit sparen kannst)
auch komplexere Programm-Elemente einzusetzen
eine ganze Reihe von Spiel-Projekten zu erstellen
wie man Apps für den Play Store vorbereitet
Im Anhang gibt es dann noch zusätzliche Informationen und Hilfen, u.a. über Installationen und den Umgang mit Fehlern.
Wie arbeite ich mit diesem Buch?
Grundsätzlich besteht dieses Buch aus einer Menge Text mit vielen Abbildungen dazwischen. Natürlich habe ich mich bemüht, alles so zuzubereiten, dass daraus lauter gut verdauliche Happen werden. Damit das Ganze noch genießbarer wird, gibt es zusätzlich noch einige Symbole, die ich dir hier gern erklären möchte:
Arbeitsschritte
Grundsätzlich lernt man besser, wenn man einen Programmtext selbst eintippt oder ändert. Aber nicht immer hat man große Lust dazu. Deshalb gibt es alle Projekte im Buch auch als Download:
http://www.mitp.de/899
Und hinter einem Programmierschritt findest du auch den jeweiligen Namen des Projekts oder einer Datei (z.B. → GameView.java). Wenn du also das Projekt nicht selbst erstellen willst, kannst du stattdessen den passenden Ordner laden (zu finden im Download-Paket).
Aufgaben
Am Ende eines Kapitels findest du jeweils eine Reihe von Fragen und Aufgaben. Diese Übungen sind nicht immer ganz einfach, aber sie helfen dir, noch besser zu programmieren. Lösungen zu den Aufgaben findest du in verschiedenen Formaten ebenfalls im Verzeichnis Projekte. Du kannst sie dir alle im Editor von Windows oder auch in deinem Textverarbeitungsprogramm anschauen. Oder du lässt sie dir ausdrucken und hast sie dann schwarz auf weiß, um sie neben deinen Computer zu legen. (Auch die Programme zu den Aufgaben findest du im Download-Paket.)
Notfälle
Vielleicht hast du irgendetwas falsch gemacht oder etwas vergessen. Oder es wird gerade knifflig. Dann fragst du dich, was du nun tun sollst. Bei diesem Symbol findest du eine Lösungsmöglichkeit. Notfalls kannst du aber auch ganz hinten im Anhang B nachschauen, wo einige Hinweise zur Pannenhilfe aufgeführt sind.
Wichtige Stellen im Buch
Hin und wieder findest du ein solch dickes Ausrufezeichen im Buch. Dann ist das eine Stelle, an der etwas besonders Wichtiges steht.
Expertenwissen
Wenn du ein solches »Wow« siehst, geht es um ausführlichere Informationen zu einem Thema.
Was brauchst du für dieses Buch?
Installiert wird Java in ein Verzeichnis deiner Wahl, z.B. C:\Programme\Java. Auch Android Studio muss installiert werden und auch hier kannst du das Verzeichnis selbst bestimmen, z.B. C:\Programme\Android. Zusätzlich empfiehlt es sich, auf einem anderen Laufwerk...