Voila maintenant plus de deux ans que Windows 10 est sorti, et le modèle UWP semble toujours boudé des développeurs, et même des utilisateurs.
UWP pour des applications modernes
La plupart des applications desktop utilisent les API win32 qui ont fait leur apparition au début des années 90, où les écrans ne dépassaient pas le 800×600 et où le nombre de DPI était faible.
Mais de nos jours, les résolutions ont augmenté de manière spectaculaire
et il est de plus possible de mélanger plusieurs résolutions lorsqu’une fenêtre est envoyée d’un écran à un autre.
De plus l’arrivée du touch, et maintenant de la réalité virtuelle avec Holo Lens multiplie encore les environnements dans lesquels les applications Windows doivent fonctionner.
Plutôt que de moderniser l’API existante, qui est un travail colossal difficilement possible, Microsoft a décidé d’en créer une nouvelle: les Universal Windows Applications (UWP) afin de proposer aux développeurs un nouvel environnement de développement moderne et sûr pour concevoir des applications d’aujourd’hui et de demain.
Grâce à UWP, le développeur peut, avec une seule application, viser plusieurs plateformes totalement différentes Xbox, PC, Tablette, Holo Lens.
Autre avantage: les applications UWP s’installent et se mettent à jour automatiquement, via le Windows Store, ce qui simplifie à la fois la vie de l’utilisateur — qui n’a plus à télécharger et installer une application à la main — mais aussi celle du développeur qui n’a plus à gérer lui même les mises à jour.
Les UWP sont aussi capables de gérer les affichages modernes: vous ne tomberez donc plus sur ce genre d’écrans:
Les applications utilisant la nouvelle API sont aussi sandboxées, c’est à dire qu’elles tournent dans un environnement cloisonné et ne peuvent pas endommager votre installation de Windows. Elles ne peuvent par exemple pas modifier la base de registres et possèdent leur propre mini registre.
Enfin, les applications UWP n’utiliseront pas votre ordinateur sans le consentement de l’utilisateur: par exemple, si une application souhaite accéder à votre localisation, vous en serez informé.
Sur le papier, les logiciels universelles semblent apporter beaucoup et devraient être de plus en plus utilisées. Le problème est qu’il n’en est rien, même deux ans après.
Oui, mais…
Si sur le papier, cela semble beau, il semblerait que cette nouvelle API ne propose pas encore toutes les fonctionnalités nécessaires pour les développeurs actuels, qui sont donc réticents à porter leurs applications.
UWP ne fournit pas encore toutes les fonctionnalités nécessaires aux développeurs
UWP fonctionne seulement sur Windows 10, ce qui n’aide pas, étant donné que Windows 7 représente encore la majeure partie des utilisateurs de Windows.
Pire, Microsoft, qui est à l’origine de UWP devrait montrer l’exemple, mais ce n’est malheureusement pas le cas. En effet, les quelques applications de Microsoft UWP sont la plupart du temps incomplètes, instables, et — surtout — moins bonnes que leurs homologues win32.
Les applications UWP manquent parfois de fonctionnalités basiques comme la possibilité de glisser-déposer un fichier sur la fenêtre de l’application, ou encore la restriction à une seule fenêtre par application.
Les applications UWP manquent de fonctionnalités basiques
La sortie de Windows 10 S, disponible sur le Surface Laptop a accéléré un petit peu les choses, avec l’annonce de l’arrivée de Spotify et iTunes notamment (que l’on attend toujours), mais d’une part cela fait bien trop peu d’applications. Et ensuite, ces applications sont la plupart du temps de simples applications win32 qui ont été repackagées à l’aide de Desktop Bridge.
Un échec cuisant
Parce que vous l’aurez compris, les applications UWP sont pour l’instant un échec, et devant le manque d’intérêt des développeurs pour ces nouvelles API, Microsoft leur permet tout simplement de repackager leurs applications existantes pour les publier sur le Windows Store.
Si cela a le mérite d’étoffer le Windows Store, ce type d’application ne met aucunement en avant UWP puisque win32 reste la base: la plupart des problèmes résident donc, comme le flou rencontré sur certains écrans, etc
Pire, les applications win32 et UWP ne partageant généralement pas du tout la même interface et les mêmes éléments graphiques, l’utilisateur se retrouve avec deux types d’applications totalement différentes.
Que faire ?
Du point de vue de Microsoft, il est clair qu’il est nécessaire de développer plus d’applications UWP ainsi que d’améliorer la qualité des programmes existants, qui laissent vraiment à désirer.
Redmond a déjà commencé à rajouter certaines API et semble être à l’écoute des développeurs, mais c’est malheureusement trop peu pour l’instant. Le Windows Store manque vraiment d’applications phare utilisant UWP.
Ensuite, si l’idée de pouvoir convertir des applications win32 pour les publier sur le Windows Store semble intéressante, elle ne devrait probablement être seulement temporaire. Si ce n’est pas le cas, quel intérêt a un développeur de réécrire son application en UWP si la version win32 fonctionne telle qu’elle. Cela lui permet de conserver sa base de code existante ainsi que de pouvoir mettre à disposition à la fois une version Windows 7 et Windows 10/UWP.
La route semble donc encore longue et incertaine pour UWP. Microsoft doit vraiment accélérer la cadence et faire le nécessaire pour promouvoir & améliorer l’écosystème UWP.
L’arrivée d’application comme Affinity Photo sur iOS éclipsent totalement au niveau qualité toutes les applications UWP sorties jusqu’à maintenant. Avec la sortie prochaine de la version 11 du système mobile d’Apple, ce genre de logiciels devrait se multiplier, creusant encore plus le fossé avec Microsoft et UWP.
L’équipe Surface produit de magnifiques machines que sont la Surface Pro et le Surface Laptop. Mais l’important est ce que l’on peut faire avec et malheureusement, avec Windows 10 S & UWP on ne fait pas grand chose pour l’instant :(
Microsoft propose d’ailleurs actuellement une mise à jour de Windows 10 S vers Windows 10 Pro gratuitement, preuve là encore de l’échec du Windows Store…