4.4 Cross-kompilierte Anwendungen

Cross-kompilierte Anwendungen schließlich sind nativen Anwendungen am ähnlichsten. Hier wird der entwickelte Quellcode während des Build-Prozesses in eine direkt auf dem mobilen Endgerät ausführbare Anwendung umgewandelt.


Abbildung 4.4: Aufbau einer cross-kompilierten Anwendung

Um Anwendungen für verschiedene Plattformen übersetzen zu können, benötigt der Ansatz einen sogenannten Cross-Compiler. Als Cross-Compiler bezeichnet man „[…] einen Compiler, der auf einem bestimmten System (auch Hostplattform genannt) läuft, aber Kompilate (Objektdateien oder ausführbare Programme) für andere Systeme erzeugt.“ (Wikipedia, 2010c).

Wie bei interpretierten Anwendungen (Abschnitt 4.3) nutzt der Programmierer die vom Ansatz definierten Funktionen zum Programmieren der Anwendung in der Entwicklungssprache. Der Cross-Compiler erstellt anhand der Übersetzungstabellen des Ansatzes, in denen festgelegt ist welche native Funktionalität durch eine Funktion ausgeführt werden soll, für jede Zielplattform eine direkt ausführbare mobile Anwendung. Im Vergleich zu interpretierten Anwendungen müssen hier kein Interpreter und keine Zuordnungstabellen in der Anwendung untergebracht werden, was dazu führt, dass die Anwendung weniger Speicherplatz auf dem Gerät benötigt.

Auch bei cross-kompilierten Anwendungen müssen die Anbieter wie bei interpretierten Anwendungen (Abschnitt 4.3) einen Weg finden, die Unterschiede in der Benutzeroberfläche und Funktionalität der Plattformen auszugleichen. Die Problematik des Testens auf Desktop-Computern besteht ebenso und wird auch hier durch die Nutzung der Simulatoren der Plattformen oder durch Testen auf Geräten gelöst. Bei Installation und Distribution der Anwendungen unterscheiden sich cross-kompilierte Anwendungen ebenso wenig von interpretierten Anwendungen.

Die Ausführung einer per Cross-Compiler übersetzten Anwendung auf der Zielplattform unterscheidet sich nicht von der einer nativen Anwendung. Alle in den Beurteilungskriterien genannten allgemeinen und technischen Anforderungen (vgl. Abschnitte 3.1.2 und 3.1.3) sind erfüllbar. Inwiefern der Ansatz dies unterstützt, hängt lediglich vom Umfang der Implementierung des Anbieters ab.

Einschätzung

Cross-kompilierte Anwendungen unterscheiden sich kaum von interpretierten Anwendungen. Sie bieten die gleiche native Funktionalität und verursachen dabei dieselben Probleme wie interpretierte Anwendungen. Allerdings sind die erstellten Anwendungen kleiner, da auf einen integrierten Interpreter verzichtet werden kann. Der Code einer cross-kompilierten Anwendung unterscheidet sich gar nicht von dem einer nativ entwickelten mobilen Anwendung.

Ansätze dieser Klasse

  • openPlug ELIPS Studio

Leave a Reply

Your email address will not be published. Required fields are marked *