Native App-Entwicklung vs. Alternativen am Beispiel von Appcelerator. Übersicht über mögliche Alternativen zur nativen Entwicklung, Vergleich der Technologien und die Erfahrung am Beispiel eines realen Projekt für ein großes internationales Unternehmen.
JavaScript goes Enterprise - Node.js-Anwendungen mit Visual Studio und den No...
Native app entwicklung vs. alternativen am beispiel von appcelerator
1. Native App-Entwicklung
vs. Alternativen am
Beispiel von Appcelerator
von Konstantin Filtschew
Donnerstag, 20. Dezember 12
2. Agenda
• Projekt
• Vorstellung der möglichen Technologien
• Unterschiede der Ansätze
• Fazit
Donnerstag, 20. Dezember 12
3. Projekt
• Entwicklung
• Zielsystem: IOS (iPad)
• Grafisch aufwendig
• Für Messen als Kommunikationswerkzeug
• Sehr hohe Ansprüche
• ???
Donnerstag, 20. Dezember 12
4. Apples Entscheidung
• Stand: September 2010
• written in Objective-C, C, C++
• or JavaScript as executed by the iPhone OS
WebKit engine
• only code written in C, C++, and
Objective-C may compile and directly link
against the Documented APIs
Donnerstag, 20. Dezember 12
5. Technologie
• Apple IOS SDK
• Appcelerator Titanium
• PhoneGap
Donnerstag, 20. Dezember 12
6. Apple IOS SDK
• Objective-C
• Manuelle Speicherverwaltung (bis IOS 5)
• Vollständige Funktionalität
• IOS API-Nähe
• Sehr Viele Ressourcen im Netz und Bücher
• Bestes Look & Feel
• Xcode
Donnerstag, 20. Dezember 12
7. PhoneGap
• Webkit
• Natives Look & Feel nicht gut lösbar
• Animationen problematisch und langsam
• „Man fühlt es“
Donnerstag, 20. Dezember 12
8. Titanium (1)
• Javascript
• Sehr ähnlich Adobe AIR
• Kein HTML DOM (kein CSS)
• JS Engine „magisch“ um graphische Elemente
erweitert
• TitianiumStudio
(ehemals Aptana)
Donnerstag, 20. Dezember 12
9. Titanium (2)
• Plattform verstehen / Konzepte kennen
• Mit Besonderheiten „leben“
• „JS“ bekannt aber doch neu
• Ausgabe : Projekt
•
Donnerstag, 20. Dezember 12
10. Titanium (3)
• Mozilla SeaMonkey / Google V8 Engine
• Subset aller Features
(IOS, Android, ...)
• Aufteilung über Dateien
• Kein MVC
• Kein „Framework für Javascript“
• Eine Codebase für alles
Donnerstag, 20. Dezember 12
11. Vergleich
IOS SDK Appcelerator PhoneGap
Programmier-
Objective-C JS HTML/CSS/JS
sprache
HTML DOM -/+ -/+ +
Nativer Look +++ ++ -/+
„Feel“ +++ ++ --
IDE Xcode TitaniumStudio ∞
Open Source na +/- ++
Doku/Bsp. +++ -- +++
Donnerstag, 20. Dezember 12
12. „Housten we have a problem“
• Feature:Video in der App abspielen
• v1: App stürzt ab
• v2: App friert ein
• v3: Alles Mögliche
• Kostenpflichtiger Support bestätigt Fehler
• Bug über Monate nicht behoben, dann
Bugtracker zu
Donnerstag, 20. Dezember 12
13. „Housten we have a problem“
• Neues Feature
• Drucken
Donnerstag, 20. Dezember 12
14. „Housten we have a problem“
• Einreichung in den Appstore
• IOS 5.1
• IOS 6
• Bugs Bugs Bugs ...
Donnerstag, 20. Dezember 12
15. Doku und Transparenz
• Faktisch keine Bücher
• Sehr sehr wenig im Netz zu finden
• Antwort auf Fragen im kostenpflichtigen
Supportbereich möglich
• Kostenpflichtiger Supportbereich bringt
„wenig bis nichts“
Donnerstag, 20. Dezember 12
16. Appcelerator Bugs
• Stand: 02.2011
• über 1000 offene Bugs
• Offiziele Releases mit heftigen Bugs
• Featuritis
• Empfehlung von Appcelerator:
• Daily Builds benutzen
• Kostenpflichtiger Support
Donnerstag, 20. Dezember 12
17. Entscheidung gegen Appcelerator (1)
• Bugtracker nicht öffentlich einsehbar
(wieder einsehbar seit ...2011/2012)
• Kostenpflichtiger Support bestätigt Fehler,
behebt sie aber nicht
• Fehler über Jahre nicht behoben
• Location Based Service
Donnerstag, 20. Dezember 12
18. Entscheidung gegen Appcelerator (2)
• Wenn ein Feature fehlt, dann ...
• nativ entwickeln
• an Appcelerator anbinden
• Fehlende Transparenz vs. Marketing
• Jeff Haynie (CEO)
Donnerstag, 20. Dezember 12