Diplomarbeit, 2011
190 Seiten, Note: 2,0
1. Einleitung
1.1. Motivation und Zielsetzung
1.2. Vorgehen und Abgrenzung
2. Grundlagen
2.1. Definition des Begriffs „App“
2.2. Mobile Endgeräte
2.3. Mobile Betriebssysteme
2.3.1. Google Android
2.3.2. Apple iOS
2.3.3. Microsoft Windows Phone
2.3.4. Nokia Symbian
2.3.5. Research In Motion Blackberry OS
2.4. Mobile Applikationen
2.4.1. Geschichte und Akzeptanz der mobilen Applikationen
2.4.2. Abgrenzung zu Desktop-Anwendungen
2.4.3. Abgrenzung zu mobilen Web-Applikationen
2.4.4. Kategorien und Beispiele innovativer Apps
3. Entwicklung
3.1. Android
3.1.1. System-Architektur
3.1.2. Laufzeitverhalten
3.1.2.1. Lebenszyklus einer Android Anwendung
3.1.2.2. Dalvik Virtual Machine und Multitasking
3.1.2.3. Sandbox und Datenaustausch
3.1.3. Entwicklungsumgebung und -Werkzeuge
3.1.3.1. Werkzeuge für das GUI-Design
3.1.3.2. Debugger und Emulator
3.1.4. Aufbau eines Android-Projekts
3.1.5. Basiskonzepte der Android-Entwicklung
3.1.5.1. Activities
3.1.5.1.1. Zustandssicherung
3.1.5.1.2. Menüs
3.1.5.1.2.1. Optionen-Menü
3.1.5.1.2.2. Kontext-Menü
3.1.5.1.3. Spezielle Activities
3.1.5.1.3.1. ListActivity
3.1.5.1.3.2. PreferenceActivity
3.1.5.1.4. Exkurs: Benachrichtigungen
3.1.5.1.4.1. Toasts
3.1.5.1.4.2. AlertDialogs
3.1.5.2. Intents
3.1.5.2.1. Explizite Intents
3.1.5.2.2. Implizite Intents und Intent-Filter
3.1.5.2.3. Broadcast Receiver
3.1.5.2.4. Broadcast Intents
3.1.5.2.5. Statischer Broadcast Receiver
3.1.5.2.6. Dynamischer Broadcast Receiver
3.1.5.3. Service
3.1.5.3.1. Lebenszyklus
3.1.5.3.2. Services, Prozesse und Threads
3.1.5.3.3. Interaktion mit Services
3.1.5.3.3.1. Local Service
3.1.5.3.3.2. Remote Service
3.1.5.4. Content Provider
3.1.5.4.1. Content Resolver
3.1.5.4.2. Adapter und AdapterViews
3.1.5.4.3. Content Provider und Datenhaltung
3.1.5.4.3.1. SQLite Datenbank
3.1.5.4.3.2. Implementierung des Content Providers
3.1.5.5. Android Manifest
3.1.6. Weitere Konzepte der Android Entwicklung
3.1.6.1. Location Based Services
3.1.6.2. Zugriff auf Hardware-Komponenten
3.1.6.3. Grafik
3.1.7. Socket-Programmierung in Android
3.1.8. Programmstruktur der Android Beispiel-Anwendung
3.2. iOS
3.2.1. System-Architektur
3.2.2. Laufzeitverhalten
3.2.2.1. Lebenszyklus einer iOS Anwendung
3.2.2.2. Sandbox und Datenaustausch
3.2.2.3. Multitasking und Interapplikations-Kommunikation
3.2.2.4. Memory Management
3.2.3. Entwicklungsumgebung und -Werkzeuge
3.2.3.1. Werkzeuge für das GUI-Design
3.2.3.2. Debugger und Simulator
3.2.4. Aufbau eines iOS-Projekts
3.2.5. Basiskonzepte der iOS-Entwicklung
3.2.5.1. Delegation
3.2.5.2. Target Action
3.2.5.3. Model View Controller
3.2.6. Socket-Programmierung in iOS
3.2.7. Programmstruktur der iOS Beispiel-Anwendung
3.3. Windows Phone
3.3.1. Windows Phone und Windows Mobile
3.3.2. System-Architektur
3.3.3. Laufzeitverhalten
3.3.3.1. Lebenszyklus einer Windows Phone Anwendung
3.3.3.2. Sandbox und Datenaustausch
3.3.3.3. Multitasking
3.3.4. Entwicklungsumgebung und -Werkzeuge
3.3.4.1. Werkzeuge für das GUI-Design
3.3.4.2. Debugger und Emulator
3.3.5. Aufbau eines Windows Phone Projekts
3.3.6. Basiskonzepte der Windows Phone Entwicklung
3.3.6.1. Datenbindung
3.3.6.1.1. Datenbindung zwischen GUI-Elementen
3.3.6.1.2. Datenbindung zwischen GUI-Element und Datenmodell
3.3.6.2. Model-View-ViewModel-Entwurfsmuster
3.3.7. Socket-Programmierung in Windows Phone
3.3.8. Programmstruktur der Windows Phone Beispiel-Anwendung
4. Vertrieb und Vermarktung
4.1. Der Markt der mobilen Applikationen
4.2. Monetarisierung
4.2.1. Geschäftsmodelle für mobile Applikationen
4.2.1.1. Pay-per-download
4.2.1.2. In-App Werbung
4.2.1.3. Premium Versionen und In-App Käufe
4.2.1.4. Abonnements
4.2.2. Umsatzerwartung
4.2.3. Lukrative App-Entwicklungsfelder
4.3. Vertriebsmöglichkeiten
4.3.1. Google Android Market
4.3.1.1. Spezifikationen
4.3.1.2. Veröffentlichung
4.3.2. Apple App Store
4.3.2.1. Spezifikationen
4.3.2.2. Veröffentlichung
4.3.3. Microsoft Windows Phone Marketplace
4.3.3.1. Spezifikationen
4.3.3.2. Veröffentlichung
5. Abschlussbetrachtung
5.1. Zusammenfassung und Vergleich
5.1.1. Allgemeine Kriterien und Merkmale
5.1.2. Entwicklungs-Umgebung und -Werkzeuge
5.1.3. Entwicklungskonzepte
5.1.4. Wirtschaftliche Kriterien und Merkmale
5.2. Fazit und Ausblick
Das Hauptziel dieser Diplomarbeit ist die Untersuchung und der Vergleich der drei führenden mobilen Betriebssysteme Android, iOS und Windows Phone unter besonderer Berücksichtigung ihrer Entwicklungsumgebungen und Konzepte. Die Forschungsfrage fokussiert dabei auf die technischen und wirtschaftlichen Aspekte der App-Erstellung sowie die Anforderungen, die Entwickler bei der Realisierung innovativer mobiler Anwendungen auf diesen Plattformen erfüllen müssen.
3.1.5.4.3.1. SQLite Datenbank
Android stellt mit der Integration der SQLite-Programmbibliothek eine leichtgewichtige Datenbank-Lösung bereit, welche keine Client-/Server-Architektur benötigt. Stattdessen wird die komplette Datenbank in einer einzigen *.db-Datei im Verzeichnis /data/data/
Für die Arbeit mit einer SQLite-Datenbank empfiehlt es sich die Android-Klasse SQLiteOpenHelper zu erweitern. Diese stellt Methoden für die Erzeugung und Modifikation der Datenbank und der Datenbank-Tabellen bereit. Die Definition der Datenbank-Tabellen kann in bekannter SQL-Syntax erfolgen. Der folgende Code-Ausschnitt aus der Beispiel-Applikation demonstriert die Erstellung einer Datenbank users.db mit der Tabelle user:
public class DBManagerClass extends SQLiteOpenHelper {
private static final String DB_NAME = "users.db";
private static final int DB_VERSION = 1;
private static final String DB_USER_TABLE_NAME = "user";
private static final String DB_USER_TABLE_CREATE =
"CREATE TABLE "+DB_USER_TABLE_NAME+" ("+
"_id INTEGER PRIMARY KEY AUTOINCREMENT, "+
"user VARCHAR(30), "+
"modified VARCHAR(30))";
public DBManagerClass(Context context) {
super(context, DB_NAME, null, DB_VERSION);
}
public void onCreate(SQLiteDatabase arg0) {
arg0.execSQL(DB_USER_TABLE_CREATE);
}
}
1. Einleitung: Motivation, Zielsetzung und methodisches Vorgehen der Arbeit werden dargelegt, wobei ein besonderer Schwerpunkt auf dem Vergleich der App-Entwicklung zwischen Android, iOS und Windows Phone liegt.
2. Grundlagen: Es werden der Begriff "App" definiert, die mobile Hardwareumgebung beschrieben und ein historischer sowie aktueller Überblick über die wichtigsten mobilen Betriebssysteme gegeben.
3. Entwicklung: Dieses Kernkapitel untersucht detailliert die Systemarchitekturen, Laufzeitmodelle, Entwicklungswerkzeuge und Basiskonzepte für die Plattformen Android, iOS und Windows Phone anhand von Demonstrations-Apps.
4. Vertrieb und Vermarktung: Die Dynamik des App-Marktes wird analysiert, aktuelle Kennzahlen werden aufgezeigt und verschiedene Monetarisierungsmodelle sowie Vertriebsmöglichkeiten der großen App-Stores besprochen.
5. Abschlussbetrachtung: Die gewonnenen Erkenntnisse werden strukturiert zusammengefasst, in vergleichenden Tabellen gegenübergestellt und kritisch bewertet, bevor ein Fazit zur Zukunft der mobilen App-Entwicklung gezogen wird.
Android, iOS, Windows Phone, App-Entwicklung, mobile Applikationen, Software-Architektur, IDE, Eclipse, Xcode, Visual Studio, Monetarisierung, App-Store, In-App-Werbung, Fremium-Prinzip, Datenbindung
Die Diplomarbeit befasst sich mit den Grundlagen der Entwicklung von mobilen Applikationen sowie deren Vermarktung auf den drei gängigen Plattformen Android, iOS und Windows Phone.
Die Arbeit deckt die technische Seite der App-Erstellung, wie Betriebssystemarchitekturen und Entwicklungskonzepte, sowie die ökonomische Seite des App-Marktes und dessen Monetarisierung ab.
Das Ziel ist es, technische Unterschiede und Gemeinsamkeiten der drei Plattformen aufzuzeigen und einen praxisnahen Leitfaden für Entwickler zu bieten, inklusive monetärer Aspekte.
Die Arbeit nutzt eine literaturbasierte Analyse aktueller Marktstudien kombiniert mit einem praxisorientierten Vergleich der Entwicklungskonzepte anhand von selbst erstellten Demonstrations-Applikationen.
Der Hauptteil gliedert sich in drei Abschnitte für Android, iOS und Windows Phone, in denen Architektur, Laufzeitverhalten, Entwicklungstools und spezifische Programmierkonzepte für jede Plattform erläutert werden.
Android, iOS, Windows Phone, App-Entwicklung, Software-Architektur, App-Store, Monetarisierung, Entwicklungsumgebung, mobile Endgeräte.
Während Android auf Java basiert und eine offenere, komponentenbasierten Architektur bietet, setzt iOS auf die Sprache Objective-C, ein restriktiveres Sandbox-Modell und das MVC-Entwurfsmuster.
Die Datenbindung ist ein zentraler Automatismus bei Windows Phone, der die UI-Elemente direkt an Datenmodelle koppelt, um eine strikte Trennung von Logik und Design gemäß des MVVM-Musters zu erleichtern.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

