Faut-il choisir une application UWP pour développer votre application mobile ?

5 minutes de lecture

L’une des questions qui se pose souvent en début de projet dans les entreprises c’est quelle technologie choisir pour développer une application mobile.

Vous allez me dire que tout dépend du type d’application souhaitée (web ou pas), les types d’appareils (devices) cibles…

Mais dans quel contexte projet le type d’application Universal Windows Platform (UWP) est-il le mieux adapté ?

Qu’est-ce qu’une application UWP ?

Une application UWP c’est une application :

  • Windows qui repose sur la plateforme UWP.
  • Qui cible une famille d’appareils (Mobile, PC, Xbox…) ou toutes.
  • Qui est distribuée en tant que package Appx.
  • Disponible dans le Windows 10 Store (ou pas) qui s’exécute sur les devices Windows 10.

Pour information, une application UWP n’est pas du tout une application Web. Ce type d’application ne nécessite pas la présence d’un navigateur Web pour fonctionner.

Outils et compétences techniques pour développer une application UWP

Il est possible de développer une application UWP en utilisant plusieurs langages de programmation, à savoir :

  • XAML pour l’UI et C#, VB, C++ pour la logique applicative
  • DirectX pour l’UI et C++ pour la logique applicative
  • HTML5, CSS3 et JavaScript

Ce qui est intéressant à savoir c’est que si vous avez des compétences en WPF ou Web, vous pouvez facilement trouver vos marques.

Pour l’IDE, c’est l’incontournable Visual Studio 2015 ou ultérieur (Visual Studio 2017).

Ne pas oublier que le SDK Windows 10 doit être impérativement installé.

Côté système d’exploitation, il n’y a que Windows 10 qui est nécessaire donc à mettre de côté les autres OS.

Les types d’appareils ciblés.

Grâce aux évolutions technologiques (hardware et software), développer une application mobile implique une prise en compte de plusieurs composantes majeures. Parmi elles, nous avons les types d’appareils (devices).

Les types d’appareils ciblés par une application sont déterminants. Ils orientent le choix de la technologie qui sera utilisée tout au long de son développement.

Les applications UWP ciblent tout device sous Windows 10. En utilisant le bon jargon, on parle de plusieurs famille d’appareils.

Nous avons par exemple : les tablettes, PCs, XBOX, Windows Phone…sous Windows 10.

L’avantage majeur d’une application UWP, c’est qu’une seule application peut être déployée sur toutes les familles d’appareils. Ceci représente un gain de temps considérable car qui dit une seule application dit un seul code et la génération d’un seul package.

Au vu de la diversité des devices que cible une application UWP, l’approche de conception d’interfaces utilisateur « Mobile first » est préconisée. Dans le sens où les tailles d’écrans peuvent aller jusqu’à 84 pouces en fonction du device.

Il est effectivement plus facile avec les application UWP de prendre en charge plusieurs tailles d’écrans et plusieurs modèles d’interactions, qu’il s’agisse d’impulsions tactiles, de la souris et du clavier, d’une manette de jeu ou d’un stylet.

L’inconvénient majeur d’une application UWP c’est qu’elle n’est pas Cross platform.

En revanche, Visual Studio permet de développer des applications natives Cross platform par le biais de Xamarin.

La gestion des modes connecté et non-connecté dans une application UWP

Les applications UWP possèdent deux principaux types de données : les données locales et externes.

Les données locales sont celles qui sont stockées dans le device avec l’application. Une fois que l’application est désinstallée, elles sont également supprimées.

Elles peuvent être utilisées par l’application même lorsque celle-ci n’est pas connectée à un réseau (LAN, Wifi, xG…).

Contrairement aux données locales, les données externes ne dépendent pas de la présence de l’application dans le device.

Elles sont accessibles via des Web Services ou APIs et nécessitent parfois que le device soit connectée à un réseau.

Les applications UWP permettent de gérer les modes connecté et non connecté en mettant à disposition des APIs qui facilitent la gestion des flux entre l’application, les données locales et externes.

Nous avons par exemple :

Synchronisation des bases de données dans une application UWP

La manipulation des données représente le cœur d’une application. Il est donc important de savoir comment elles seront gérées pour que les utilisateurs puissent les exploitées et les partagées à tout moment.

La question qui revient souvent dans un projet de développement d’application mobile c’est comment synchroniser les données locales d’une application qui sont dans une base de données embarquée telle que SQLite avec une base de données côté serveur telle que SQL Server?

Pour répondre à cette problématique, il est possible dans une application UWP de développer un module de synchronisation des bases de données personnalisé que l’application utilisera à chaque synchronisation ou faire appel à Azure Mobile Services.

Les types de graphiques disponibles dans une application UWP

En plus de la manipulation, l’affichage des données représente un enjeu de taille dans une application mobile.

Dans certains cas, l’utilisation de graphiques pour afficher les données offre à l’application une meilleure expérience utilisateur.

Les applications UWP facilitent le processus d’utilisation des graphiques grâce à des librairies gratuites telle que WinRT XAML Toolkit for Windows 10 qui proposent plusieurs composants de types de graphiques.

Bien que ces librairies soient gratuites, il est bon de savoir que par défaut, il n’existe pas de composants graphiques dans une application UWP.

Cependant, Telerik ou ComponentOne proposent des composants UWP payants pour afficher des graphiques dans une application UWP.

Déploiement d’une application UWP

Le déploiement d’une application est une phase importante dans le développement d’une application mobile.

La politique de déploiement qui sera adoptée dans une application UWP dépendra des utilisateurs cibles (personas).

Une application UWP peut être destinée à tous publics ou à un public restreint. C’est pour cela qu’il existe plusieurs façons de déployer une application UWP.

Nous avons par exemple :

  • Side loading: Permet de déployer une application UWP dans un device sans passer par le Windows Store.
  • Windows Store: Une application UWP disponible dans le Windows 10 Store est téléchargeable par tout public.
  • Windows Store pour entreprise:  Permet de rendre une application UWP disponible qu’à vos employés. En savoir plus

Conclusion

Avant de choisir de développer votre application mobile en UWP, vous devez impérativement être certain qu’elle sera installée dans un device sous Windows 10.

Bien que les applications UWP présentent beaucoup d’avantages tels que :

  • Le déploiement d’une seule application vers toutes les familles d’appareils.
  • Un gain de temps de développement considérable grâce à des APIs fournies par la plateforme Windows Universelle.
  • La possibilité de développer une application mobile qui offre la même expérience utilisateur quel que soit le type d’appareil ciblé.

En revanche, le fait que les applications UWP ne fonctionnent que sous Windows 10 représente un inconvénient majeur qui est en mesure de faire changer d’avis à plus d’une personne.

Publicités