Suche

» erweiterte Suche » Sitemap

Technik


» Bild vergrößern
» Blick ins Buch
» weitere Bücher zum Thema


» Buch empfehlen
» Buch bewerten
Produktart: Buch
Verlag: Diplomica Verlag
Erscheinungsdatum: 07.2013
AuflagenNr.: 1
Seiten: 128
Abb.: 15
Sprache: Deutsch
Einband: Paperback

Inhalt

Laufzeitumgebungen stellen Programmen auf unterschiedlichen Plattformen eine einheitliche Funktionalität zur Verfügung. Dadurch kann das gleiche Programm auf unterschiedlichen Plattformen ausgeführt werden, ohne verändert werden zu müssen. Adobe stellt mit der Adobe Integrated Runtime eine Laufzeitumgebung für Flash und ActionScript-Programme zur Verfügung. Um plattformspezifische Funktionalität wie spezielle Hardware in der Laufzeitumgebung verwenden zu können, muss die Laufzeitumgebung erweitert werden. In diesem Werk wird beschrieben, wie native Erweiterungen für die Adobe Integrated Runtime erstellt werden können. In einem einführenden Kapitel werden dem Leser die Grundlagen über die Laufzeitumgebung von Adobe und deren Architektur vermittelt. Im Hauptteil dieses Werkes werden die Entwicklungsschritte für die Erstellung einer nativen Erweiterung detailliert beschrieben. Anschließend wird anhand von Praxis-Beispielen die Erstellung einer nativen Erweiterung für unterschiedliche Plattformen dargestellt.Abschließend wird das Konzept der Adobe Native Extensions mit nativen Erweiterungen bei alternativen Laufzeitumgebungen verglichen und kritisch analysiert.

Leseprobe

Textprobe: Kapitel 2.4, Adobe ActionScript: ActionScript 3.0 ist eine Objekt-Orientierte Programmiersprache. In ActionScript verfasste Programme benötigen die AIR-Laufzeitumgebung, um ausgeführt werden zu können (vgl. [ActionScript 3 2011] Seite 4). ActionScript bietet viele eingebaute Klassen, welche dem Entwickler standardmäßig zur Verfügung stehen. Als Beispiel hierzu sei die Klasse Net-Connection genannt. Mit dieser Klasse lässt sich beispielsweise sehr einfach eine Netzwerk-Verbindung aufbauen (vgl. [ActionScript 3 2011] Seite 5). ActionScript stellt nur Klassen mit genereller Funktionalität bereit. Um beispielsweise Plattform-Spezifische Funktionen nutzen zu können, werden native Codeerweiterungen (ANE) verwendet (vgl. [AIR Native Extension 2013] Seite 5). 2.5, Apache Flex Software Development Kit: Apache Flex ist ein Software Development Kit (SDK), mit welchem plattform-übergreifende Rich Internet Applikations erstellt werden können. Aus ActionScript-Code und dem in MXML verfassten Layout Code wird eine Flex-Applikation erstellt. Diese Anwendung läuft dann in der Adobe Flash Laufzeitumgebung (vgl. [Apache Flex 2013]). Flex wurde von Adobe Systems an die ‘Apache Software Foundation’ gespendet. Diese Organisation betreut nun das Flex-Projekt weiter (vgl. [Apache Flex 2013]). Für Entwickler wird das Flex SDK als Erweiterung für bekannte Entwicklungsumgebungen angeboten (vgl. [Apache Flex 2013]). 2.6, Adobe Native Extensions: Native Erweiterungen für Adobe AIR sind Code-Bibliotheken, welchen nativen Code enthalten. Dieser native Code ist mit einer in ActionScript verfassten API umhüllt und so in einer AIR-Applikation zugänglich (vgl. [AIR Native Extension 2013] Seite 5). Native Extensions werden aus folgenden Gründen verwendet: Um Besonderheiten der Plattform ansprechen und verwenden zu können, welche standardmäßig in AIR nicht enthalten sind. ActionScript bietet Klassen mit genereller Funktionalität. Geräte-Spezifische Besonderheiten sind nicht in der Standard-Bibliothek von ActionScript enthalten. Diese gerätespezifischen Besonderheiten, zum Beispiel Hardware, kann auch nicht direkt aus der AIR-Laufzeitumgebung angesprochen und verwendet werden. Durch eine Implementierung von nativem Code können diese Besonderheiten aber genutzt werden. Nativer Code hat nämlich Zugang zu gerätespezifischer Hard- und Software (vgl. [AIR Native Extension 2013] Seite 5). Um bei kritischen Algorithmen eine höhere Performance erreichen zu können (vgl. [AIR Native Extension 2013] Seite 6). Um bestehende native Code-Bibliotheken wiederverwenden zu können (vgl. [AIR Native Extension 2013] Seite 6). Eine Native Extension ist eine Kombination aus einer ActionScript-Klasse und nativem Code. 2.7, NativeProcess-ActionScript Klasse: ActionScript bietet eine NativeProcess-Klasse. Die Klasse erlaubt der AIR-Laufzeitumgebung nativen Code am Betriebssystem auszuführen. Diese Funktionalität ist ähnlich zu Native Extensions, da NativeProcess-Klassen ebenfalls den Zugriff auf Gerätespezifische Eigenschaften bieten (vgl. [Native Process 2013]). Um nun zwischen NativeProcess-Klassen und Native Extensions unterscheiden zu können, sollten folgende Punkte berücksichtigt werden: Nur das extendedDesktop AIR-Profile unterstützen NativeProcess-Klassen. Für Anwendungen, welche extendedTV, mobileDevice, oder extendedMobileDevice AIR-Profile verwenden, sind NativeExtensions die einzige Möglichkeit (vgl. [AIR Native Extension 2013] Seite 6). Mit einer Native Extension werden meist Implementierungen für mehrere Plattformen mitgeliefert. Der Zugriff erfolgt über eine einheitliche Schnittstelle. Wird jedoch die NativeProcess-Klasse verwendet, kann der Zugriff auf die bereitgestellte Funktionalität unter den verschiedenen Plattformen variieren (vgl. [AIR Native Extension 2013] Seite 6). Eine NativeProcess-Klasse startet bei der Ausführung einen eigenen Prozess. Hingegen läuft eine Native Extension im selben Prozess wie die AIR-Laufzeitumgebung. Daher muss bei Verwendung der NativeProcess-Klasse womöglich das Handling der Kommunikation zwischen den beiden Prozessen implementiert werden (vgl. [AIR Native Extension 2013] Seite 6).

Über den Autor

Martin Trinker wurde 1990 in Schladming geboren und wuchs in Gröbming auf. Im Jahr 2009 maturierte er mit Auszeichnung an der BHAK Liezen. Nach einem Jahr beim Österreichischen Bundesheer begann er 2010 an der FH Joanneum Graz Informationsmanagement zu studieren. 2012 arbeitete er an der FH Joanneum im Studiengang Informationsmanagement als Tutor für Informatik. In seiner Freizeit ist er bei gemeinnützigen Organisationen engagiert. Nebenberuflich arbeitet der bergsportbegeisterte Autor als Skilehrer und als Softwareentwickler an diversen Projekten.

weitere Bücher zum Thema

Bewerten und kommentieren

Bitte füllen Sie alle mit * gekennzeichenten Felder aus.