Microsoft souhaite que les développeurs se penchent sur l'environnement Windows Runtime (WinRT) qui sert de terreau aux applications Metro dans Windows 8. Ces dernières sont censées être rapides et légères, tout en bénéficiant de certains effets graphiques gérés par le GPU de la machine. Pour s'assurer que les performances seront au rendez-vous, l'éditeur n'hésite pas à donner quelques conseils pour éviter les principaux écueils.
Des conseils pour certains basiques mais ...
Ces conseils sont répartis en plusieurs catégories. Beaucoup paraîtront sans doute logiques à certains développeurs mais il s'agit de lignes simples qui, si elles sont suivies, devraient selon l'éditeur améliorer nettement les performances. Par exemple, le chargement des images de l'application devrait toujours se faire depuis une base locale. Si une image doit être récupérée depuis une position distante, Microsoft recommande de placer une image locale pour « réserver la place » en attendant la récupération.
Au sujet des images d'ailleurs, on rappellera qu'elles doivent accompagner plusieurs tailles d'écran. Il est donc préférable de couvrir les cas principaux pour charger l'image la plus adaptée. Un trop grand étirement aura bien sûr un rendu pixellisé tandis qu'une image trop grande provoquera des calculs inutiles par la machine.
Sur les applications elles-mêmes, Microsoft préfère que l'écran de chargement de l'application ne soit pas retardé par des opérations trop lourdes. L'éditeur recommande ainsi de ne pas effectuer d'opérations réseau pendant l'affichage du « splash screen » ou encore de commencer à charger une base de données.
Concernant l'interface, l'éditeur souhaite que la réactivité soit toujours au rendez-vous. Les éléments qui la composent ne devraient être ainsi jamais appelés avec des API synchrone pour ne pas provoquer de blocage selon les opérations. Autre problématique, qui avait été soulevée l'année dernière sur Android : ne pas laisser les calculs intensifs dans le processus gérant l'interface.
... pas toujours.
Uns section plus importante est consacrée au JavaScript puisque ce langage peut être utilisé en conjonction du HTML5 et des CSS. Microsoft recommande notamment de se servir des API système pour générer les miniatures ou pour tout ce qui concerne la manipulation des médias. Des opérations qui en JavaScript provoqueraient des charges processeur trop importantes. De même, les interactions avec le DOM (Document Object Model) devraient être maintenues au minimum.
La publication de ces conseils n'est pas surprenante. Le succès des applications Metro est essentiel au succès de WIndows 8. L'éditeur est conscient qu'il va introduire de très vives cassures dans les habitudes. Les fonctionnalités apportées doivent dépasser en intérêt ce que l'utilisateur aura l'impression de perdre.