ios apps mit webtechnologien erstellen

23
IOS APPS MIT WEBTECHNOLOGIEN ERSTELLEN EIN ÜBERBLICK

Upload: michael-kuehnel

Post on 20-Jan-2015

620 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: iOS Apps mit Webtechnologien erstellen

IOS APPS MIT WEBTECHNOLOGIENERSTELLEN

EIN ÜBERBLICK

Page 2: iOS Apps mit Webtechnologien erstellen

MICHAEL KÜHNELMacht Internet seit Netscape 4.7

Frontend Developer bei der SMA Solar Technology AG

Twitter:

Website:

@mkuehnel

www.michael-kuehnel.de

Page 3: iOS Apps mit Webtechnologien erstellen

WORUM GEHT ESUIWebView

Apache Cordova (PhoneGap)

Appcelerator Titanium

Page 4: iOS Apps mit Webtechnologien erstellen

NATIVE APPS = NATIVE TOOLCHAINVORAUSSETZUNGEN

Apple Macintosh

iOS SDK

Xcode IDE

UIKit Framework, iPhone-Simulator, weitere Tools, Compiler etc.

iOS Developer Program ( )$99/Jahr

Page 5: iOS Apps mit Webtechnologien erstellen

UIWEBVIEW

Siehe

“ You use the UIWebView class to embed web content in yourapplication. To do so, you simply create a UIWebView object,

attach it to a window, and send it a request to load web content.”

developer.apple.com

Page 6: iOS Apps mit Webtechnologien erstellen

FAKTEN»Container« für Webinhalte

Bestandteil des Apple UIKit Frameworks

Kann »interne« und »externe« Inhalte laden

Build Prozess über Xcode

Native APIs teilweise über HTML5 APIs nachrüstbar:

/ : Application Cache, Local Storage, Web SQL & IndexedDatabase

, and

Offline Storage

Geolocation Media Capture File API

Page 7: iOS Apps mit Webtechnologien erstellen

VORTEILE»Freiheit« in der Webentwicklung:

Serverseitige -> Datenbanken, Skriptsprachen etc.

Clientseitig -> Datenbanken, CSS und JavaScript Frameworks etc.

Gleiche Code-Basis ggf. für andere Plattformen nutzbar.

Page 8: iOS Apps mit Webtechnologien erstellen

NACHTEILEPerformance: Andere JavaScript Engine als in Mobile Safari

Rudimentäre iOS SDK und Objective-C Kentnisse nötig

Page 9: iOS Apps mit Webtechnologien erstellen

APACHE CORDOVA (PHONEGAP)

Siehe

“ Apache Cordova is a platform for building native mobileapplications using HTML, CSS and JavaScript. ”

incubator.apache.org/cordova

Page 11: iOS Apps mit Webtechnologien erstellen

VORTEILE»Freiheit« in der Webentwicklung:

Clientseitig -> CSS und JavaScript Frameworks etc.

Alle wichtigen Geräte APIs werden unterstützt

Gleiche Code-Basis für andere Devices nutzbar:

Unterstützt zur Zeit mobile Plattformen.

Open Source und kostenlos

7

Page 12: iOS Apps mit Webtechnologien erstellen

NACHTEILEPerformance: Andere JavaScript Engine als in Mobile Safari

Kein Einsatz von serverseitigen Scriptsprachen möglich

Page 13: iOS Apps mit Webtechnologien erstellen

APPCELERATOR TITANIUM SDK

Siehe

“ Create rich native iOS, Android, hybrid, and mobile web appsfrom a single JavaScript-based SDK. ”

appcelerator.com

Page 14: iOS Apps mit Webtechnologien erstellen

FAKTENJavaScript basierte Plattform

»JavaScript« -> »Objective C« Bridge

Man programmiert JavaScript und die App nutzt letzlich native APIs

Unterstütztung von JavaScript Modulen nach der

Build Prozess über

CommonJS Module Specification

Titanium Studio

Page 15: iOS Apps mit Webtechnologien erstellen

VORTEILENative UI Elemente

Performance

Gleiche Code-Basis für andere Devices nutzbar:

Unterstützt zur Zeit mobile Plattformen.3

Page 16: iOS Apps mit Webtechnologien erstellen

NACHTEILEPure JavaScript Lösung. Kein HTML, kein CSS.

Kein Einsatz von serverseitigen Scriptsprachen möglich

Kommerzieles Produkt mit dem eine Firma Geld verdienen muss. Siehe .Preistabelle

Page 17: iOS Apps mit Webtechnologien erstellen

FAZIT»RICHTIGE« APPS BENÖTIGEN »RICHTIGE« APIS

Kein Unterschied an API Features zwischen Cordova und Titanium SDK

Letzlich eine Sache der persönlichen Präferenz:

Performance vs. Flexibilität …

Vorhandenes Wissen … etc …

Page 18: iOS Apps mit Webtechnologien erstellen

DIREKTER VERGLEICH EINER APP IN ENTWICKLUNG»WORKOUT LOG« AUF GITHUB

Titanium Branch

Phonegap Branch

Page 19: iOS Apps mit Webtechnologien erstellen

ALTERNATIVEN

Page 20: iOS Apps mit Webtechnologien erstellen

RUBYMOTION

Siehe

“ RubyMotion is a revolutionary toolchain for iOS. It lets youquickly develop and test native iOS applications for iPhone or

iPad, all using the awesome Ruby language you know and love. ”

rubymotion.com

Page 21: iOS Apps mit Webtechnologien erstellen

CORONA

Siehe

“ With Corona, you will develop mobile apps in record time.Develop in Lua, an easy-to-learn language that coupled with ourelegant APIs allow you to add features like Facebook and physics

in just a few lines of code. ”

coronalabs.com

Page 22: iOS Apps mit Webtechnologien erstellen

DAS WARS ; )

FRAGEN?Twitter: E-Mail:

@[email protected]

Page 23: iOS Apps mit Webtechnologien erstellen

APPENDIX – LINKSMobile JavaScript/CSS Frameworks

Zepto

jQTouch

jQuery Mobile

Sencha Touch

Kendo UI Mobile

Foundation 3

Sidetap