Strategies et developpements mobiles multi-plates-formes.
Stratégies et développements mobiles multi-plates-formes
La Mêlée Numérique 14
29 avril 2010
Florent Garin
florent.garin@docdoku.com
http://www.docdoku.com
http://twitter.com/docdoku
Florent Garin
• Co-fondateur de DocDoku
Société innovante IT
http://www.docdoku.com
• Co-fondateur du JUG de Toulouse
Ouvert à tous, les technologies Java
http://www.jugtoulouse.org
• Auteur du livre : « Développez des
applications mobiles pour les google
phones »
Agenda
• Panorama des technologies mobiles du marché
• Un problème, plusieurs solutions
• Un futur plein de promesses
• Conclusion
i iPhone
• Matériel et OS conçus par Apple
• Objective-C, Cocoa
• Téléphone media
• Les +
• Ergonomie et esthétisme
• AppStore, + de 150 000 applications
• Les -
• Plateforme (très) fermée
• Multi-tâches que pour l’iPhone OS 4
• Peut s’imposer dans les entreprises ?
Android
• Projet open source à l’initiative de Google
• Fabricants multiples
• Java, SDK Android
• Les +
• Ouvert, déploiement aisé
• Environnement de développement familier
(Eclipse)
• Les -
• Manque de cohérence, fragmentation
• Moins connu du grand public que l’iPhone
BlackBerry
• Fabriqué entièrement par RIM
• JavaME + Extensions propriétaires
• Les +
• « Inventeur » du push mail
• Bien implanté dans les entreprises
• Les –
• Coûts des logiciels serveurs élevés
• Fonctions multimédia réduites
Windows Mobile
• Technologie Microsoft
• Multi-constructeurs
• Framework .Net
• Les +
• Intégration facile aux produits Microsoft
• Les -
• Peu d’innovation (renouveau possible
avec WinMo 7)
• Au départ simple déclinaison de
Windows sur le mobile
Nokia
• OS Symbian
• C++ et Toolkit Qt
• Les +
• Solide réputation
• Leader avec 37% de PDM
• Les –
• Gamme très (trop ?) large
• Stratégie hésitante et peu lisible
• A loupé la vague smartphone et tactile
Palm
• Périclite depuis plusieurs années, joue son
va-tout avec le Pré
• WebOS, Framework Mojo
• Les +
• Clavier, multi-touch, batterie amovible
• Framework avant-gardiste, Mojo =
HTML5+API JavaScript
• Les –
• Mauvais timing, ne s’est imposé
• Store en ligne peu étoffé
Java ME : une réponse ?
• Java Micro Edition
• Massivement déployé (> 1 milliard)
• Fonctionne sur une machine virtuelle
• GUI limité, JavaFX pourrait corriger
ce problème
• Comportement différent entre
téléphones
• Dédié aujourd’hui aux appareils
entrée de gamme
Framework de développement cross-platform
• Titanium (Appcelerator)
• Le développement se fait avec les
technologies Web : HTML, CSS,
JavaScript…
• Accès au GPS, à l'accéléromètre…
• Rendu visuel natif
• Support de l’iPad
• Licence Apache Public v2.0
Framework de développement cross-platform
• PhoneGap
• Approche similaire à Titanium
• Prend en charge beaucoup de
plateformes : iPhone, iPad, Android,
Palm, Symbian et BlackBerry
• Problème du plus petit dénominateur
commun
• Attention le rendu n’est pas natif
Compilation croisée
• Adobe Flash Professional CS5
• Packageurs pour iPhone et iPad
disponibles
• Packageurs pour Android,
BlackBerry et Palm à venir
• ActionScript 3
• Permet de capitaliser sur un même
outil et un même langage
Compilation croisée
• MonoTouch
• Aujourd’hui cible uniquement
l’iPhone
• Développement C# et .NET
• Nécessite un Mac et le SDK iPhone
Développement Web
• JQTouch
• Dérivé de JQuery
• Propose des thèmes pour imiter
les interfaces natives
• Riche palette d’animations et de
transitions
• Mode plein écran
WebKit : un moteur presque universel
• WebApp.Net
• iWebKit
• iUI
• …
• S’appuient tous sur le moteur WebKit :
iPhone, Android, certains Nokia bientôt BlackBerry…
• Attention à la version de WebKit embarquée dans le
téléphone
• Incompatible avec Windows Mobile !
GWT (Google Web Toolkit)
• Framework de développement d’applications Web
AJAX
• On développe en Java et GWT génère les fichiers
JavaScript spécialement adaptés à chaque navigateur
• Pour les versions de Windows Mobile antérieur à 6.5
exige un navigateur alternatif à Internet Explorer :
Opera mini, ou Fennec (Firefox)
• Conçu pour les ordinateurs de bureau mais applicable
aux mobiles
Développement hybride
• Principe : encapsuler le navigateur dans une
application native
• Intérêt
• Atteindre les fonctions non accessibles depuis le
navigateur (Push, carnet d’adresses…)
• Bénéficier de la visibilité des boutiques en ligne
(AppStore)
• Facilité d’utilisation pour le public (icône, raccourci)
• Possibilité de monétiser l’application
Finalement quelle direction prendre ?
• Pas de solution miracle !
• Bien déterminer la cible
• Penser à la pérennité
• Anticiper les problèmes d’acceptation sur l’AppStore
(compilation croisée mal vue par Apple)
Demain : HTML5 & CSS3
• Géolocalisation
• WebGL pour la 3D, support de l’audio et de la vidéo
• WebSocket API, stockage local de données…
• Et surtout une même plateforme standard desktop et mobile
Des questions ?
Notre livre :
« Android développer des applications
mobiles pour les google phones »
contact@docdoku.com
http://www.docdoku.com/identite/contact/