Android - Anwendungen für das Handy-Betriebssystem erfolgreich programmieren

Heiko Mosemann, Matthias Kose

Android

Android - Anwendungen für das Handy-Betriebssystem erfolgreich programmieren

2009

386 Seiten

Format: PDF, Online Lesen

E-Book: €  31,99

E-Book kaufen

E-Book kaufen

ISBN: 9783446420717

 

1.1 Warum Java? (Seite 2)

Warum ist Java bisher die einzige Programmiersprache, die für die Android- Programmierung unterstützt wird? Was zeichnet Java gegenüber anderen Programmiersprachen aus?

Generell kann man sicher ein schlechtes (oder gutes) Programm in jeder Programmiersprache schreiben, und die Frage, welche die beste Programmiersprache ist, bewegt viele Gemüter. Wenn Software effizient entwickelt werden soll, müssen bei der Auswahl einer Programmiersprache verschiedene Kriterien beachtet werden, wie etwa die Verfügbarkeit von Entwicklungsumgebungen. Aus softwaretechnischer Sicht hat C das Manko, dass es die Objektorientierung nicht unterstützt. Java scheint aus folgenden Gründen am besten im Vergleich zum verbleibenden hauptsächlichen Konkurrenten C++ geeignet:

  • Verbreitung: Java gibt es auf über 1,8 Milliarden mobilen Endgeräten, und etwa 80 % aller neuen verkauften Handys und PDAs basieren mit der Untermenge Java ME letztendlich auf Java. Die hinter Java stehende Firma Sun erwartet wegen der immer leistungsfähigeren mobilen Endgeräte einen Konvergenztrend hin zu Java SE.
  • Portabilität: Bei der Android Softwareentwicklung erfolgt die Programmierung in Java unter Verwendung einer Vielzahl von Java SE- sowie Androidspezifischer Bibliotheken. Diese relative Nähe zur Java SE-Programmierung erleichtert natürlich die Wiederverwendung von existierendem Java SE Quellcode, insbesondere wenn es sich dabei nicht um die Benutzerschnittstellen und die mobilfunkspezifischen Systemteile handelt.
  • Sicherheit: Java hat ein API (Application Programming Interface) für sicherheitsrelevante Abläufe. Dazu gehören Authentifizierung, die Überprüfung von Signaturen und die Vergabe von Rechten (Autorisierung).
  • Akzeptanz: Java ist auf diesem Gebiet ähnlich wie C++ sehr weit verbreitet und hat eine große Community. Es gibt Foren für Entwickler bei allen namhaften Herstellern.
  • Robustheit: Java-Anwendungen laufen in einer Sandbox. Die Virtual Machine wacht darüber, dass ein Absturz eines Programms keine anderen Anwendungen stört. Darüber hinaus ist der Bytecode vor der Ausführung mit einem Prüfsummenverfahren verifiziert worden, um die Integrität des Codes sicherzustellen. Unbemerkte Veränderungen, zum Beispiel durch ein Virus, werden dadurch deutlich erschwert.
  • Garbage Collector: Java hat einen Garbage Collector, sodass keine Speicherlecks auftreten. In C++ können Speicherlecks dagegen nur durch sorgfältige Programmierung vermieden werden.

 

© 2009-2018 ciando GmbH