Cross-platform Web Apps

909 views

Published on

This presentation talks about strategies to develop cross-platform apps using Web Standards and Wakanda.

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
909
On SlideShare
0
From Embeds
0
Number of Embeds
40
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide
  • So fertig, los gehts!? Mein Name ist Jürgen Fesslmeier. Ich bin Wakanda Product Manager. Davor war ichTechnologie-Berater, so wieeinigewahrscheinlich von Ihnen.Heute will ich auf einpaar der Strategienfür die Entwicklung und Vermarktung von mobile Anwendungeneingehen, insbesonderewelcheAnsätzedafürWakandabietet.Dabei will ichaberbeimwesentlichenbleiben: wieerstellenwirCross-Plattform-AnwendungmitdemgeringstenAufwand?Dennhätte man einganzesEntwicklungsteammit Smartphone Entwicklern, würde man einige der Sachenhierbestimmtganzandersbetrachten. AlsEinzelkämpferoderimkleinen Team, und mitdemKunde, muss man abwägenwoliegen seine Kernkompetenzen (oderim Team), welcheMittelstehenbereit, welcheAnforderung hat die geplanteAnwendung, etc.
  • Wirwollenalle das Gleiche!ImIdealfall, will man eine native Desktop-Anwendung, man will aucheine Web-Anwendungfür den Desktop-Browser, und man will eine native App fürjedeserhältlicheMobiltelefon und man will eine mobile Web App.Wenn das Budget bzw. Entwickervorhandenentsprechendgross ist, dann das vielleichtmöglich, aberfür die meisten von unsnicht der Fall und ausserdemmacht das wenig Sinn.Das Zitat_______, beflügeltunsereErwartungennochimmer:"Write once, run anywhere." -- Sun Microsystems, 1996(Umgemünzt auf "Write once, test everywhere.", "Write once, debug everywhere".)Das istheuteimmernocheinvollmundigesVersprechen. WirsinddembestimmteinpaarSchrittenähergekommen, entsprichtaberimmernochnichtganz der Realität. Aberwenn WIR die Wahl hätten, dannwäre das sicherunserWunsch!
  • Also ichversuche mal meinePerspektivezugeben auf eineHerangehensweiseisewie man den Kunden am bestenfür die richtige Platform gewinnt.WelcheZielplattformenfürdie Anwendung? Wirmüssenuns also zuerst auf die gängisgstenPlatformenkonzentrieren und an denenzuerstarbeiten (oder der Kundegibt seine Präferenzen).IE6: Geradewennes um Browser-Answendungengeht, kommenimmernochFragenauf ”Muss ich Internet Explorer 6 unterstützen?" EsgibtgewisseSachen, wenn man in einemkleinen Team arbeitet (und begrenzteResourcen hat), die muss man hintenanstellen, dennsiewollenjanicht auf den kleinstengemeinsamenNenneroptimieren. Also nochmalwirwollenuns auf die grösstenAngriffszielekonzentrieren und dortzuerst die Schneiseschlagen.MeinerMeinungnach, kommenheuteausdemBereich der MobilenAnwendungen in unsererBranche die grössten Impulse (Dynamic, "Momentum") und die gebenimPrinzip den Wegfür die Zukunftvor (Richtungsweisend). Der Desktopistheuteimmernoch der Schlüssel, woLeutewirklichmit in vollemUmfangmit Business-Anwendungenumgehen/interagieren, und woraufwirunsauchbeiWakanda auf Web basierten Desktop konzentrieren. Also Desktop und Mobil Plattformensindbeidewichtig, wobeieben Desktop-Anwendungennochhervorstechen.
  • HerausforderungenUnterschiedlicheTeschnischeAnforderungenJedeeinzelnePlattform (Telefon, Tablet) hat ihreeigenentechnischenAnforderungen. Auf jedemBetriebssystem, insbesondere, wennSienativen Desktop-Anwendungenentwickelnwollen, habensieimschlimmsten Fall völligunterschiedlicheEntwicklungswerkzeuge/Entwicklungsumgebung. 4D alsPlattform, zumBeispiel, wurdegebaut, um Entwicklung auf verschiedenenPlattformenzuvereinfachen und zubeschleunigen.DieZukunft der Business-Anwendungengehörtden mobilenEndgeräten.
  • Fähigkeiten von TelefonensinderheblichunterschiedlichDie Leistungsmerkmale von Smartphones unterscheidensicherheblichzwischenAnbieternoder von Version zu Version. Nach 2 JahrenVertaghabeichmein Android Smartphone ausgetauscht und siehe da, das Telefonistkomplettüberarbeitet, und das nachnur 2 Jahren, die Unterschiedesindeinfachriessengross.
  • PlattformenalsbeweglichesZielJedeeinzelnePlattformstellteinbewegtesZieldar, insbesondereimMobilbereich. Die Entwicklungschreitet so schnellvoran, dasseinefertiggestrickteAnwendungnurbiszumnächsten OS Update läuft und die nächsteWartung der Anwendungansteht.
  • Lock-in istgewollt, also die Bindung der Endkunden an die GeräterherstellerAberals das erste iPhone eingeführtwurde, warenalleAnwendungen von DrittanbieternausschliesslichWeb-basiert.In AppstoresistausSicht der Anbieterist die Qualität der Inhaltekannbeser von HerstellernkontrolliertwerdenZahlungsmethodenintegriert: LukrativfürAnbieter: Inhaltekönnenverkauftwerden, Verkauf von Atonements (Subscriptions), etc.Fragmentierung auf Kundenund VerkäuferseiteeineAnwendungerhältlichauchauf PlattformA, abernicht auf Plattform B,z.B. Google Maps.VoreinpaarJahrenwurdenimAppStoreAnwendungenblockiert, die in einer Runtime Umgebungabliefen, also z.B. auf Basis von HTML5, JavaScript, etc. Mitterweilehabensich Apples Geschäftsbedingungengeändert, so dass man heuteauchhybride Browser-basierteAnwendungenim App Store platzierenkann.
  • MitWakandabaut man Web AnwendungenimGegensatzzunativenAnwendungen. Die meisten von unsfühlensichwohlereineAnwendungmit Web Standards zubauenalsimGegensatzzu Objective-C, C++ oder Java.
  • Ok, also wennwirüberWakandasprechen, kommt die Rettung in der Hinsicht, weilWakandahilftAnwendungen auf Basis von Web Standards zubauen.Also JavaScript, CSS3, HTML5.
  • Da WakandaAnwendungen auf Web Standards basierensindsiezugänglichfüreineReihe von Endgeräten.Schonalleineaufgrund der Tatsache, dass Web Anwendungen auf Standards basierenmachtsiezugänglichfüreineReihe von Endgeräten. Wakandaunterstützt Desktop-Browser, Tablet und Smartphone auf der gleichenPlattform.
  • Und der Server istwirklich das interessante anWakanda. Auf allenEbenenkommt JavaScript zumEinsatz. Mit den gleichenKompetenzenwie man schon das Front-end entwickelt hat, kann man ohnegrosseLernprozesseDatenbankabfragenohne SQL durchführen.Somitist JavaScript beiWakandaüberall, natürlich auf dem Client (natürlichist das nichtsneues), aberebenauch auf dem Server, einschliesslich der Fähigkeitsichmitdem Server zuverbinden, in demPaketbenutzenwir REST via HTTP und tauschendatenüber das JSON Protokollaus.Jetzthabenwir JavaScript wirklichüberall!
  • Was braucht man, um eine Web basierteAnwendungbeispielsweise in den AppStorezubefördern?HiergibtesimPrinzipzweiProdukte, PhoneGap und Appcelerator Titanium
  • PhoneGapBeispiel: Fidor BankFür die Fidor Bank in Münchenhabenwir in die Mobile Banking App imAppStoregelaunched. Konzeption ca. 2 Wochen, Entwicklungszeit + Test, ca. 2 Wochen, Launch im Apple AppStore ca. 2 WochenNächste Slide…
  • Die Anwendungistmit Web Standards entwickelt, HTML, CSS und JavaScript, kommuniziert per JSON und HTTPS mitdem Bank-back-end und hat einendünnenPhoneGap Wrapper.Zugriff auf Adressliste.Teilmenge des gesamtenFidor Online-AngebotsIm Moment nur auf iPhone, Android KongreteEntscheidung der Bank: HTML zuerst, native App kommtvielleichtspäter
  • Beispiel: Mobile App mitWakanda, Konferenz App mit Feedback für den 4D Summit (leidernichtfürdieseKonferenz)
  • Cross-platform Web Apps

    1. 1. Cross-PlattformWeb Anwendungen Juergen FesslmeierWakanda Product Manager @chinshr
    2. 2. “Write once, run anywhere.”
    3. 3. Optimale Zielplattformen Desktop MobilNativBrowser
    4. 4. Technische Unterschiede
    5. 5. Fragmentierung bei Endgeräten Quelle: http://opensignalmaps.com/reports/fragmentation.php
    6. 6. Plattformen als bewegliches Ziel
    7. 7. Anbieter Bindung
    8. 8. Wakanda to the rescue
    9. 9. Web Standards
    10. 10. Desktop, Smartphone, Tablet
    11. 11. JS.everywhere() Client Library ON HTTP REST Server Library Database
    12. 12. Let’s build an App!
    13. 13. Wie geht Nativ mit Web? + ? ==
    14. 14. Beispiel Web App im AppStore
    15. 15. c.4d.com mit Wakanda
    16. 16. Fazit• Frühe Entscheidung der Zielpattform(en)• Ob Web Standards oder Nativer Client hängt von den Anforderungen ab• Strategie für Mobil, e.g. mobile Web App reicht zunächst, später nativ• Native Desktop bzw. Mobile Anwendungen können per REST API mit dem Wakanda Server kommunizieren, z.B. Objective-C, Appcelerator• Erwägung einer JavaScript freundlichen Lösung per cross-platform hybrid und mobil
    17. 17. Danke.

    ×