© DrHitch/Shutterstock.com
Android-Entwicklung für Einsteiger

1 Reisevorbereitungen


Sie können bereits ein wenig programmieren und Java ist Ihnen zumindest nicht vollkommen fremd? Oder Sie haben Kenntnisse in einer anderen Programmiersprache wie C/C++, JavaScript, PHP oder C#? Dann folgen Sie mir und lernen Sie die notwendigen Werkzeuge und wichtigsten Techniken kennen, um die ersten Schritte bei der Entwicklung von Apps für Android machen zu können.

1.1 Willkommen auf der Nautilus

Kennen Sie Professor Pierre Aronnax? Nein? Aber Sie kennen sicherlich die Geschichte von Kapitän Nemo und der Nautilus: Professor Aronnax machte sich mit seinem Diener Conseil im 19. Jahrhundert als Gast der amerikanischen Regierung an Bord einer Fregatte auf, um ein vermeintliches Seeungeheuer zu jagen. Ehe er sichs versah, war er auf einer unglaublichen Reise an Bord eines Unterseebootes – der Nautilus. Er war auf einer Reise, bei der er aufregende und fantastische Dinge erlebte, die er niemals zu träumen gewagt hätte.

Seien auch Sie Gast, nicht auf der Nautilus, sondern auf der Plattform „Android“. Entdecken Sie Android nicht nur als Betriebssystem eines Handys, sondern als Plattform für Ihre eigenen Programme. Lernen Sie die notwendigen Werkzeuge kennen, nutzen Sie die mitgelieferten Beispiele des Android Development Kits als Grundlage, um schnell erste, einfache Anwendungen entwickeln zu können. Installieren und testen Sie Apps mithilfe des Android Emulators oder Ihres Smartphones.

Aber keine Angst, Sie werden dazu keine 20 000 Zeilen Programmcode schreiben müssen – auch Professor Aronnax musste schließlich die besagten 20 000 Meilen nicht selbst schwimmen, sondern war Gast von Kapitän Nemo auf dessen U-Boot Nautilus. Und wenn Sie dabei nicht Ihren Becher Kaffee umschütten, dann werden sie nicht einmal nass.

Kommen Sie mit auf eine spannende Entdeckungsreise.

Einladung zu einer Reise

„Sehr geehrter Herr Professor Aronnax,
wir möchten Sie ob Ihres vorzüglichen Rufes als anerkannter Wissenschaftler und ausgewiesener Fachmann der Meere einladen, die Expedition nach dem gesichteten Unthiere zu begleiten. Kapitän Farragut erwartet Sie als Gast auf der Fregatte ‚Abraham Lincoln‘ und hält für Sie und Ihren Diener eine Kabine bereit. Wir würden uns freuen, einen so geschätzten Passagier an Bord haben zu dürfen. Hochachtungsvoll

Im Auftrage der amerikanischen Regierung
J. B. Hobson, Marinesekretär“

An wen richtet sich dieses E-Book – und gibt es jemanden, an den es sich nicht richtet?

Dieses E-Book richtet sich an Entwickler, die in relativ kurzer Zeit einen ersten Einblick und Einstieg in die Entwicklung von Apps haben möchten. Dabei spielt es erst einmal keine allzu bedeutende Rolle, welche Vorkenntnisse Sie haben. Wichtig ist, dass Sie in der Lage sind, Ihren Computer problemlos und sicher zu bedienen und bereits Erfahrungen in der Programmierung und Entwicklung mitbringen. Ihre tatsächlichen Kenntnisse in Java sind zumindest an dieser Stelle noch nicht so wichtig. Das kommt später, wenn Sie beginnen, Ihre eigenen Apps mit eigener Logik und eigenem Code zu schreiben. Wenn Sie noch niemals programmiert haben, dann sollten Sie sich tatsächlich erst einmal mit einem geeigneten Buch oder Kurs die entsprechenden Grundlagen aneignen.

Dieses Buch wird keinen Programmierer aus Ihnen machen können, wenn Sie nicht bereits einer sind. Wohl aber werden Sie das hier Gezeigte problemlos nachvollziehen können, wenn Sie zumindest Erfahrungen in einer Sprache wie C/C++, C#, PHP oder JavaScript haben. All diese Sprachen haben eine ähnliche Syntax wie Java, und man fühlt sich doch etwas schneller heimisch. Gerechterweise muss man sagen, dass Java sich an der Syntax der älteren Sprachen C und C++ orientiert hat und nicht umgekehrt.

1.2 Die Werft und das Trockendock – Computer und Betriebssystem

Hinweis: Im Gegensatz zu Professor Aronnax, der seine Reise komfortabel auf der amerikanischen Fregatte „Abraham Lincoln“ begann, müssen Sie sich leider selbst darum kümmern, dass das notwendige Gefährt für unsere lange und abenteuerliche Reise einsatzbereit ist. Aber vielleicht wird Ihnen unser erster Teil tatsächlich ein wenig wie die Jagd nach dem „Meeresunthiere“ vorkommen. Was ist also zu tun?

Wir gehen davon aus, dass Sie einen Computer mit Windows haben, idealerweise in der aktuellen Version 8. Das ist keine Wertung gegenüber anderen Betriebssystemen wie Linux oder Apple, sondern lediglich eine Festlegung, nicht zuletzt, da Windows tatsächlich am weitesten verbreitet ist. Aber auch, wenn Sie mit einer vorherigen Version von Windows arbeiten, sollten Sie keine Probleme haben, das Gezeigte anzuwenden. Falls genügend Nachfragen kommen, werde ich gerne noch ein weiteres Kapitel nachreichen, in dem auf die Besonderheiten unter Linux oder Apple eingegangen wird.

Während man nach meiner Erfahrung bei einigen Themenstellungen zumindest bei kleineren Projekten und den ersten Anfängen durchaus mit der Hardware etwas niedriger stapeln kann, sollte man bei der Entwicklung von Apps tatsächlich nicht geizen und nach Möglichkeit einen leistungsfähigen Rechner mit großzügig bemessenem Arbeitsspeicher haben. Besonders die virtuellen Maschinen, die die verschiedenen Geräte simulieren, auf denen unsere Apps unter nahezu realen Bedingungen getestet werden, benötigen einigen Dampf aus dem Maschinenraum. Damit ist auch eine 32-Bit-Version von Windows nicht mehr unbedingt die erste Wahl für die Entwicklung. Nichtsdestotrotz kann man natürlich auch auf einem etwas weniger leistungsfähigen Rechner die ersten Schritte machen. Man sollte sich dann aber häufiger einen starken Kaffee aus der Kombüse bringen lassen und etwas mehr Wartezeit einplanen. Wie immer bei der Entwicklung wird auch ein großes Display nur noch von zwei großen Displays übertroffen. Falls also jemand aus Ihrer Familie zum Bäcker geht, können Sie ihn ja noch bitten, das eine oder andere aus dem Elektronikmarkt Ihres Vertrauens mitzubringen. Falls nicht, muss die vorhandene Ausrüstung wohl erst einmal genügen.

1.3 Die Maschinen klar machen – das JDK

Hinweis: Auf jedem Schiff, auch auf jedem U-Boot, ist die Maschine so etwas wie das Herzstück. Für uns ist das Java, genau genommen das JDK, das Java Development Kit.

Ein paar Worte zu Java

Java ist nicht nur eine Programmiersprache, sondern ein ganzes Ökosystem: Eine objektorientierte Programmiersprache, ein umfangreiches Software Development Kit, kurz JDK, zur Entwicklung und genauso auch eine Laufzeitumgebung, die alles Notwendige zur Verfügung stellt, damit in Java geschriebene und mit dem JDK kompilierte Programme auf einer Vielzahl von Computersystemen ausgeführt werden können.

Die Laufzeitumgebung wird als „Java Runtime Environment“, kurz JRE, bezeichnet. Soll Java auf einer bestimmten Plattform, auf einem bestimmten Betriebssystem zum Einsatz kommen, muss lediglich die entsprechende Laufzeitumgebung verfügbar sein. Für mobile Geräte und Handys gibt es eine spezielle, etwas kleinere Micro Edition, Java ME. Wegen der doch etwas geringeren Leistungsfähigkeit und inzwischen wohl auch wegen des Erfolgs von Android hat Java ME einiges an Bedeutung verloren.

Java-Programme werden bei der Entwicklung in Bytecode, eine Art Zwischencode, kompiliert. Es handelt sich nicht mehr um lesbaren Quellcode, aber auch noch nicht um ausführbaren Maschinencode. Genau genommen ist es eine plattformneutrale Zwischenform, die für jeden Computer und jedes Betriebssystem gleichsam verwendet werden kann – immer vorausgesetzt, es ist eine virtuelle Java-Maschine verfügbar. Die virtuelle Maschine übersetzt zur Laufzeit (also erst beim Programmstart) den Bytecode in tatsächlich ausführbaren Maschinencode. Solche Programme scheinen wegen der notwendigen Übersetzung zur Laufzeit gegenüber nativen, kompilierten Programmen etwas im Nachteil. Allerdings ist die Prozessorleistung inzwischen derart hoch, und die JREs an sich sind derart leistungsfähig, dass es heute kaum noch echte Unterschiede zu anderen Programmiersprachen gibt. Gerade bei Android zeigt sich eindrucksvoll, dass Java eben nicht langsam ist, wie immer wieder behauptet wird.

Android verfügt über eine eigene, spezielle Implementierung einer virtuellen Maschine, die Java-Programme ausführt: Dalvik oder genauer: die Dalvik Virtual Machine. Diese Java-Laufzeitumgebung ist speziell dafür ausgelegt, sparsamer mit den vorhandenen Ressource...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang