Ce samedi 17 avril a eu lieu le 1er Android Camp Paris organisé
par Sylvain Maucourt de Deveryware.
Il y avait certes eu un Android-"Dev"-CampParis1 mais
cette fois-ci, le barcamp se voulait plus général.
Nous étions 3 à de Sfeir à participer à cet événement.
Le barcamp a commencé de manière détendue autour de pizzas offertes par
Deveryware. Cela a été l'occasion de faire connaissance avant de rentrer dans
le vif du sujet. Parmis la trentaine d'affamés, il y avait entre autre Jean Luc
de jbmm, Pierre-Yves ou encore les fondateurs du
site Standroid... et bien
d'autres personnes encore. Chacun a pu sortir son appareil, le comparer, donner
ses impressions...
Jean Luc, testeur pour Archos, nous a montré un nouveau firmware "3D" pour
archos. Un jeu de course de vaisseaux type Star Wars I a servi de
démonstration. Le contrôle se faisant par l'accéléromètre : incliner à droite
ou à gauche pour tourner. Le jeu n'est pas évident à prendre en main, il faut
certainement de l'habitude. Quant aux performances graphiques, elles étaient
tout à fait honorables. Nous avons vu aussi voir un htc desire, petit frère que
Nexus One qui ne diffère que la Sense, la surcouche de HTC.
Une fois le ventre bien rempli, nous avons commencé le barcamp proprement
dit de façon traditionnelle : présentations à tour de rôle puis établissement
du programme pour l'après midi. Il y avait des profils très différents : le
bloggeur, le développeur qui fait de l'android quotidiennement, le développeur
amateur ou même le néophite qui vient voir si android serait un bon
investissement technique pour sa société.
Certains sujets se dégagent par rapport à d'autres comme le market (certaines
personnes présentes étudient l'idée de lancer un market alternatif dénommé
Appoke) et html5. Les sujets ont été
séparés en 2 catégories correspondant aux 2 salles à notre disposition même :
développement et hors-développement. Cela n'a pas empeché certains de faire des
aller-retour entre les 2 salles.
En ce qui nous concernent, nous avons assisté au sujet développement.
Voici un aperçu des thèmes abordés :
Performances
Un retour d'expérience de Pierre-Yves conseille Jackson pour la génération de JSon, le gain
de performance serait énorme.
Les nouveaux devices comme le Nexus One sont très performant. Quelqu'un nous
parle par exemple de son application qui marche très bien sur son Nexus, mais
qui très lente sur le HTC Hero d'un ami à lui. Celà peut être un danger, car on
ne se rend pas forcément compte des performances si l'on teste sur son Nexus.
C'est pourquoi, certains testent sur leur "vieux" Magic.
Le cycle de vie des Activity est sujet à problème pour certaines personnes. En
particulier, la rotation de l'écran qui provoque la perte des données. Des
solutions sont abordées allant des choix de conception à des astuces permettant
de sauver des données (voir les tutoriels disponibles ici).
Le débat sur l'optimisation a été nuancé. Il faut savoir trouver un juste
milieu entre recherche de la performance et maintenabilité. L'augmentation des
performances des nouveaux processeurs ainsi que l'éventuel JIT de Froyo,
permettront de s'autoriser plus de design pattern java classiques.
Industrialisation et outils
Pierre Yves nous parle de Roboguice, qui apporte la possibilité
de faire de l'injection de dépendances sur la plateforme android. Son
utilisation a un certain surcout, peu génant dans beaucoup de cas. Il permet
notamment de s'affranchir de code n'apportant que peu de plus-value comme la
récupération des composants déclarés dans les layouts.
Peu de développeurs présents ont exploré le terrain de l'industrialisation,
signe qu'il y a encore de quoi faire de ce coté là.
WebApp, HTML, GWT
Nous avons résumé ce qui avait été dit au HTML 5 Meetup sur les
"device API". Ces API interessent beaucoup les developpeurs mobiles alors que
le premier SDK de l'iphone, pourtant orienté web, était un échec. Etait-ce trop
tôt ?
Les apports de GWT dans le développement mobile ont aussi été abordés. On a
évoqué "Modding" l'api open-source de SFEIR qui permet de faire du
développement GWT pour mobile.
Market
Alexandre nous parle de son api
open source : android-market-api qui permet entre
autre de rechercher sur l'android market en fonction de critères comme mots
clés, commentaire, ... Pour celà, il nous explique comment il a
rétro-ingénieurer les échanges faits avec le market. Derrière une compression
gzip et un encodage en base64, des chaines de caractères était lisibles. Le
reste était basé sur protobuf.
Bien que les échanges soient optimisés, il reste tout à fait possible de les
lire.
Nous nous sommes interrogés sur la stratégie de Google au sujet de ce market.
Google a fait le sien, celui de référence, d'autres seraient tout à fait
possible.
Fragmentation
Le problème de la fragmentation du marché est abordé. D'après les derniers
chiffres, les devices en 1.5, 1.6 et 2.0 représentent chacun un tier du marché.
Il est donc bien difficile d'ignorer ces anciennes versions qui représentent
une part importante.
Nous parlons aussi rapidement de Froyo, la version 2.2 de Android, qui
sortirait en mai et de ce qu'elle pourrait apporter.
Palm
Bien que ce ne soit pas de l'android, ceux qui avaient une expérience sur le
developpement WebOS ont donner leur retour. Arrivée tardive hors des états
unis, stratégie du constructeur mal comprise, difficulté à attirer des
développeurs. Certains aspects comme la protection des données personnelles
protègent plus l'utilisateur au détriment des possibilités pour le
développeur.
Conclusion
C'est vers 18h30 que la journée se termine ....
Je crois que tout le monde est reparti des infos intéressantes, des anectodes
ou des astuces de développement.
Bref une journée enrichissante !
Nous remercions encore Sylvain et sa société pour l'organisation de cet
événement.
Par Alexandre et Nicolas.