Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Web vs. Native - Konzeption von Apps

Web vs. Native - Konzeption von Apps

Marcus Ross

October 22, 2012
Tweet

More Decks by Marcus Ross

Other Decks in Programming

Transcript

  1. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Konzep7on  von  Apps   -­‐   Web  vs.Na7ve   Marcus  Ross   Trainer/Freelancer   @zahlenhelfer  
  2. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Gedanken...  
  3. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Web  vs.  Na7ve  
  4. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Was  passiert  durch                ios  ?   <label>Single  file</label>   <input  type="file">  
  5. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Agenda   •  Das  App-­‐Problem   •  Der  Na7ve-­‐Ansatz   •  Der  WebApp-­‐Ansatz   •  Beispiele  aus  der  Praxis   •  Empfehlungen  für  die  Entwicklung   •  Fazit  
  6. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Das  Problem   •  Chef:  „Wir  brauchen  eine  App“   •  IT:  „Wow,  ja  gerne,  welche  Pla_orm?“   •  Chef:  „Wieso  Pla_orm  –  Mobil!“   •  IT:  „Also  Web  oder  na7ve  iOS?“   •  Chef:  „Na  alle!  Oder  nicht?“   •  IT:  „OK  –  Problem!“  
  7. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Beispiel:  Facebook   Was  ist  mobile?  -­‐  Was  ist  na7ve?  
  8. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Na7ve  Entwicklung   •  Lerne  die  Sprache  für  jedes  Endgerät   – Objec7ve-­‐C   – Java   – C++   – C#   •  ...und  sei  ein  Ninja    auf  jedem  System     ...  5  Jahre  später  
  9. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Na7ve  Entwicklung  (2)   •  Kosten  für  ein  iOS-­‐Projekt  (-­‐)   •  Performance  ist  gut  (+)   •  Inhouse-­‐Entwicklung  möglich?  (+/-­‐)   •  nur  ein  Zielsystem  (-­‐)   •  Monetarisierung  durch  AppStore  (+)   •  Reglemen7erung  für  die  Zulassung  (-­‐)   •  Gebühren  für  Developer-­‐Account  (-­‐)  
  10. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   WebApp  Entwicklung  (1)   •  Einfacher  Eins7eg  durch  HTML5/CSS3/JS  (+)   •  Viele  Frameworks  vorhanden  (+/-­‐)  
  11. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   WebApp  UI   •  Mögliche  Frameworks  für  UI   – jQueryMobile   – iUi   – Bootstrap   – SenchaTouch   – Enyo  
  12. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   WebApp  MVC   •  Mögliche  Frameworks  für  MVC/MVR   – Backbone.js   – Knockout.js   – Ember.js   – Batman.js       Quellen  für  Ideen:  TODOMVC!  
  13. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   WebApp  Entwicklung  (2)   •  Einfacher  Eins7eg  durch  HTML5/CSS3/JS  (+)   •  Performance  schlechter  als  na7v  (-­‐)   •  „free  as  free  beer“  (+/-­‐)   •  Offline-­‐Daten  (-­‐)   •  schnelle  Updates  (+)   •  Kein  AppStore  (-­‐)   •  Keine  Regeln  in  der  Zulassungen  (+)   •  Hardwarezugriff  (-­‐)  (iOS  6  –  Kamera/File!)  
  14. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Was  also  nehmen?   •  na7ve  Power  vs.  HTML   (lange  Listen,  flackern,  etc.)   •  Monetarisierung  der  App  vs.  Freies   Deployment  (schnelles  Update)   •  Zugriff  auf  Sensoren  vs.  HTML5   •  nur  ein  System  vs.  jedes  System   •  na7ve  UI  vs.  Irgend  was  an  UI   •  SQL  Datenbanken  vs.  local  Storage  
  15. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Antwort:   •  Kommt  drauf  an  L   •  ...daher  schauen  wir  uns  die  Praxis  an!  
  16. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Beispiel:  Amazon  
  17. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Beispiel:  IPDC   •  Ist  für  beide  Pla_ormen  erhältlich  
  18. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Beispiel:  Lehmanns   •  nur  als  Web-­‐App  erhältlich   •  kompleu  Online   •  Einkaufen  möglich   •  jederzeit  aktualisierbar   •  Auf  allen  mobilen  Geräten   •  iPhone  5  ist  kein  Problem   •  jQueryMobile  
  19. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Beispiel:  Suhrkamp  Verlag   •  InHouse-­‐WebApp   •  Produktkatalog   •  Offline  Mode  für  Daten   •  Buchcover  sind  Online   •  immer  Aktuell   •  kein  Enterprise-­‐Server   nö7g   •  jQTouch  
  20. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Beispiel:  BMW  Connected   •  Ist  nur  als  App  erhältlich   •  Bluetooth-­‐Connect   •  Fahranalyse   •  Service  für  Kunden  
  21. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Empfehlungen   •  Anfangen  mit  MockUps  (Bsp:  Balsamique)   •  Trennen  von  Daten  und  Darstellung   •  RESTFULL-­‐Services  (JSON  für  Daten)   •  Prüfen  ob  Zugriff  auf  Hardware  nö7g   •  Vermarktung  oder  Service-­‐Produkt   •  Bei  WebApp´s  auf  Frameworks  achten.  
  22. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Idee  für  „Best  of  Breed“   •  Appcelerator  bietet  Titanium  an   •  Nutzen  von  JavaScript  als  Sprache   •  Na7ve  App  (js2na7ve-­‐stubs)  je  nach  OS   •  iOS/android/Blackberry/(Windows  8  Phone)  
  23. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   Fazit   •  Es  gibt  kein  „rich7g“  oder  „falsch“   •  Prüfen  Sie  das  Budget   •  Prüfen  Sie  den  Anwendungszweck   •  Prüfen  Sie  die  Zielgruppe   •  Trennen  von  Daten  und  Anwendung   •  große  Offlinedaten  notwendig?   •  Regeln  in  der  Stores  beachten  
  24. ipdc_conference                  

       #ipdc12   www.iphone-­‐developer-­‐conference.de   DANKE!   Marcus  Ross  –  Zahlenhelfer  Consul7ng  -­‐  @zahlenhelfer   alle  Folien  auch  auf  www.speakerdeck.com/u/zahlenhelfer