"Cross Plattform Development" für Smartphones und Tablet PCs. Werkzeuge, Technologien und Potenziale


Studienarbeit, 2014

26 Seiten, Note: 1,0


Leseprobe


Inhaltsverzeichnis

Abstract

Abbildungsverzeichnis

Tabellenverzeichnis

1 Einleitung

2 Begriffsdefinitionen
2.1 Cross Plattform Development
2.1 App
2.3 Wrapper

3 Ausprägungen mobiler Apps
3.1 Native Apps
3.2 Web Apps
3.3 Hybrid Apps
3.4 Gegenüberstellung der Apps

4 Technische Grundlagen für das Cross PlattformDevelopment

5 Cross Plattform Technologien
5.1 Web Technologien
5.2 Cross Compiling
5.3 Boxing

6 Cross Plattform Werkzeuge
6.1 Web Application Framework: Sencha Touch
6.2 Wrapper-Frameworks: PhoneGap
6.3 Cross Compiler Framework: Titanium

7 Zusammenfassung

8 Ausblick
8.1 Risiko durch Cross Plattform Development
8.2 Potenzial durch Cross Plattform Development

Literatur

Abstract

61,5% aller Experten empfehlen Unternehmen mobile Applikationen für mehrere Plattformen zu entwickeln (Statista_A, 13.05.2014). Das Anbieten einer Unternehmensleistung in Form von Apps für unterschiedliche Plattformen gilt als nutzbringend, da mehrere Kunden gleichzeitig erreicht werden können. Es wird vom Ansatz abgewichen, jede App von Grund auf als native App zu entwickeln, da der entstehende Aufwand den Nutzen deutlich übersteigt. An dieser Problematik knüpft die vorliegende Studienarbeit an, indem Lösungen gefunden werden, bei denen der Aufwand nicht den Nutzen, im Rahmen der plattformübergreifenden App Entwicklung übersteigt.

Zu Beginn werden Begrifflichkeiten definiert und die grundlegenden App Arten voneinander unterschieden. Abhängig von der jeweiligen Art der Applikation wird auf einen technologischen Ansatz, sowie auf ein Werkzeug zur Implementierung eingegangen, welche im Bereich Cross Development zum Einsatz kommen, um die Herausforderung der Plattformabhängigkeit zu bewältigen. Daraufhin werden die erläuterten Ansätze, Werkzeuge und App Ausprägungen miteinander verglichen. Abschließend werden Potentiale und Risiken des Cross Plattform Developments vorgestellt.

Abbildungsverzeichnis

Abb. 1: Technologie-Anordnung im Spektrum zw. Webtechnologien & nativen Technologien

Abb. 2: Aufzählung der wichtigsten Webtechnologien

Abb. 3: XMLVM – Transformationsmöglichkeiten

Abb. 4: Web App + Native App = Hybrid App bzw. Boxed App

Abb. 5: Struktur einer Sencha Touch Web App (Modell)

Abb. 6: Struktur einer Sencha Touch Web App (Implementierung)

Abb. 7: Position von Titanium SDK im Titanium Framework

Abb. 8: Entwicklungsvarianten im Vergleich

Tabellenverzeichnis

Tbl. 1: Gegenüberstellung der drei wichtigsten nativen Plattformen

Tbl. 2: Vergleich Objective-C und Java

Tbl. 3: Vergleich OO-Programmierung mit Cross-Plattform-Entwicklung

1 Einleitung

“write once, run anywhere”

(Slogan von der Firma Sun Microsystems)

Wohin das Auge reicht - überall Smartphones und Tablet-PCs. In der heutigen Zeit sind mobile Endgeräte kaum mehr weg zu denken und umgeben uns permanent. David Gilbert bestätigte diesen Zuwachs mit der Aussage, dass es in vier Jahren mehr mobile Geräte als Menschen auf diesem Planeten gibt. (David Gilbert, 10.06.2013).

Mit der zunehmenden Anzahl der Mobile Devices nimmt ebenfalls die Anzahl der darauf laufenden mobilen Anwendungen (Apps) zukünftig zu. Im Jahr 2011 wurden weltweit geschätzte 25 Milliarden Programme aus mobilen Application Stores auf Handys geladen, bis 2016 sollen es mehr als 300 Milliarden sein (Statistia_B, 20.04.2014).

Aber nicht nur die Geräte und Anwendungen vermehren sich rasant, sondern auch die Plattformen (Betriebssysteme), worauf die Apps eines Mobile Devices ausgeführt werden. Die fünf wichtigsten Smartphone Plattformen sind Android (Google), Symbian (Nokia), iOS (Apple), Windows Phone (Microsoft) und BlackBerry OS (RIM). Somit existieren parallel unterschiedliche Welten, die von Grund auf nicht miteinander harmonieren. Es ist die Rede von Plattformabhängigkeit. Dies bedeutet, eine spezielle Anwendung müsste für jede Plattform separat entwickelt werden, was wieder rum für einen deutlich höheren Aufwand sprechen würde, da die Anwendungsentwicklung für jede Plattform Zeit und Geld kostet.

2 Begriffsdefinitionen

Des Weiteren wird die grundlegende Bedeutung der Begrifflichkeiten Cross Plattform Development, App und Wrapper definiert, welche notwendig für das Verständnis dieser Arbeit sind.

2.1 Cross Plattform Development

Unter einer Plattform kann man ein Betriebssystem oder abstrakter eine einheitliche Basis verstehen, auf der Anwendungen ausgeführt und entwickelt werden können.

Der Term „Cross“ weist darauf hin, dass etwas übergreifend erfolgt, in diesem Kontext plattformübergreifend.

Der letzte Teil der Terminologie, „Development“ beschreibt die auszuführende Tätigkeit, die Entwicklung von plattformunabhängigen Anwendungen.

Diese drei Begrifflichkeiten miteinander aggregiert, ergeben den Entwicklungsansatz Cross Plattform Development mit dem Ziel, eine App nur einmal für mehrere Betriebssysteme zu programmieren.

2.1 App

Eine App bezeichnet allgemein eine Softwareanwendung. Der Begriff App entspricht der Kurzform des englischen Wortes Application. Eine Anwendungssoftware leistet nach Hansen und Neumann:

“Lösungen für fachliche Probleme“ (Hansen und Neumann, November 2004, S. 29).

Somit kann beispielsweise durch das Schreiben einer Kalender-App das Zeitmanagement-Problem gelöst werden.

Des Weiteren ist eine App eine spezielle Ausprägung einer klassischen Anwendung, da eine App zusätzlich von einem Application Store herunter geladen werden kann – zu Beginn war dies nur für mobile Endgeräte möglich, mittlerweile auch für Laptops und Desktop-PC im Microsoft Umfeld (Wolf Knüpffer, 30.05.2014, S. 1). Behrens definiert einen Application Store (App Store) als:

„ein internetbasiertes Vertriebssystem für Software, das vor allem durch die steigende Verbreitung von Smartphones und Tablet-PCs Beliebtheit erlangt" (Thomas Behrens, August 2012, S. 2).

Im weiteren Verlauf dieser Studienarbeit wird nur auf Mobile Apps für Smartphones und Tablet PCs eingegangen.

2.3 Wrapper

Ein Wrapper ist ein Stück Software, das ein anderes Stück Software umhüllt (wrapped). Umgesetzt werden diese zum Beispiel im Bereich Anwendungsintegration, wenn ein Altsystem (Legacy System) in eine bestehende Infrastruktur integriert wird. Konkret wird ein Wrapper um ein Altsystem gebaut, um gezielt auf die Schnittstellen zugreifen zu können.

3 Ausprägungen mobiler Apps

Apps können in drei grundlegende Kategorien eingeteilt werden, den Nativ Apps, Web Apps und Hybrid Apps. Ziel dieser Kategorisierung ist eine Erleichterung des Verständnisses in Bezug auf die später zu erläuternden technologischen Ansätze und Werkzeuge des Cross Plattform Developments.

3.1 Native Apps

Native Apps sind Anwendungen, die für eine spezielle Ziel-Plattform entwickelt werden. Genauer gesagt, Apps werden für eine Plattform (z. B. iOS) kompiliert und anschließend auf dieser ausgeführt. Native Apps haben über APIs (Programmierschnittstellen) und Bibliotheken direkten Zugriff auf die Hardware und können direkt auf dem Gerät installiert werden (Moritz Schönberger, August 2012, S. 2). Durch den Hardwarezugriff sind Native Apps mit einer hohen Performance ausgestattet. Bevor die Installation jedoch beginnen kann, muss die App über einen Application Store heruntergeladen werden, welcher in der jeweiligen Plattform fest integriert ist. Nachfolgende Tabelle zeigt die drei wichtigsten nativen Plattformen im Vergleich zueinander.

Abbildung in dieser Leseprobe nicht enthalten

Tbl. 1: Gegenüberstellung der drei wichtigsten nativen Plattformen

Ein Plattformhersteller stellt als universales Programmierwerkzeug eine Entwicklungsumgebung, auch IDE genannt (Integrated Development Environment) bereit. Diese ermöglicht einen benutzerfreundlichen Zugang zu den Komponenten einer SDK. Ein SDK an sich setzt sich aus Bibliotheken und Hilfsprogrammen (z. B. für Debugging) zur App-Entwicklung zusammen. Die Entwicklungsumgebung kann als moderne Weiterentwicklung eines Texteditors verstanden werden, worüber unter Verwendung von Programmiersprachen Programme entwickelt werden können. Hansen und Neumann definiert eine Programmiersprache als eine

„zum Abfassen von Programmen geschaffene Sprache (…)“ (Hansen und Neumann,

November 2004).

Der wichtigste Vorteil nativer Apps ist der direkte Zugriff auf die Hardware, indem die Native App über API Aufrufe mit dem Betriebssystem interagiert. (IBM Corporation Software Group. 2012. S. 5 f).

[...]

Ende der Leseprobe aus 26 Seiten

Details

Titel
"Cross Plattform Development" für Smartphones und Tablet PCs. Werkzeuge, Technologien und Potenziale
Hochschule
Hochschule Ansbach - Hochschule für angewandte Wissenschaften Fachhochschule Ansbach
Veranstaltung
Softwaresysteme
Note
1,0
Autor
Jahr
2014
Seiten
26
Katalognummer
V300885
ISBN (eBook)
9783656970781
ISBN (Buch)
9783656970798
Dateigröße
712 KB
Sprache
Deutsch
Schlagworte
eBusiness, Cross Plattform Development, Mobile Development, Apps, App Entwicklung, App-Arten, App-Technologien, Generische App Entwicklung
Arbeit zitieren
Sven Weinzierl (Autor:in), 2014, "Cross Plattform Development" für Smartphones und Tablet PCs. Werkzeuge, Technologien und Potenziale, München, GRIN Verlag, https://www.grin.com/document/300885

Kommentare

  • Noch keine Kommentare.
Blick ins Buch
Titel: "Cross Plattform Development" für Smartphones und Tablet PCs. Werkzeuge, Technologien und Potenziale



Ihre Arbeit hochladen

Ihre Hausarbeit / Abschlussarbeit:

- Publikation als eBook und Buch
- Hohes Honorar auf die Verkäufe
- Für Sie komplett kostenlos – mit ISBN
- Es dauert nur 5 Minuten
- Jede Arbeit findet Leser

Kostenlos Autor werden