Je l’avoue, ce titre est un brin provocateur, et pourtant ! Les applications universelles UWP semblent de moins en moins être mises en avant par Microsoft depuis l'arrêt des Windows Phone et cela ne va probablement pas s’arranger… Je me posais déjà la question en octobre dernier sur l'avenir des UWP. Quelques mois plus tard, plusieurs signes semblent montrer un retrait progre...
"Microsoft a pour objectif depuis déjà quelques années de séparer le matériel, l'os , la plateforme applicative et l'interface en couches qui évolueraient indépendamment."
https://twitter.com/gus33000/status/1114090580693397504
ça se confirme Visiblement core os a séparé l'os les apps et les drivers. pour l'interface y a cshell qui est modulaire.
Je peux comprendre que tu ais eu une expérience malheureuse, mais en conclure que win32 est "hyper mal documenté"
Après je peux comprendre que ceux qui ont grandit avec puissent regretter que ce soit sur le déclin. Mais je dois dire que je ne regrette pas.
"Réservé seulement aux passionnés de la programmation"
Je m'estime passionné puisque j'en ai fait mon métier et ce par choix. Seulement pas concernant Win32
Peut-être faut-il être "Passionné de la programmation Win32".
Pardon ???
Il y a profusion de documentation sur Win32
A commencer par le MSDN ou chaque fonction de l'API Win32 est entièrement décortiquée, expliquée et documentée
Tu rajoutes à ça la très très très très nombreuse littérature, les millions de sources sur Internet, les très nombreux exemples fournis dans les différents EDI et la très grosse communauté, ...
On est pas mal non, que faudrait il de plus
Perso, j'aurais envie de dire que l'API Win32 est le truc le plus documenté qui existe sur terre
"réservé seulement à une élite"
Réservé seulement aux passionnés de la programmation
Autant je suis d'accord avec la majeure partie de ton commentaire autant sur la partie Win32 pas du tout. S'il y a bien un truc qui est hyper mal documenté et réservé seulement à une élite, c'était ça.
Effectivement et MS parviendra sans aucun doute à créer son nouveau système concurrent de notre Windows classique, c'est juste une question de temps...
Mais en attendant, on commence vraiment à s’y perdre avec toutes ces technos anciennes, actuelles, à venir, en beta, en test, en gestation, …
Et développer sous Windows aujourd’hui est un véritable parcours du combattant pour un dev qui débute
Il y a quelques années pour coder sous Windows, on prenait simplement les bouquins du magicien de la programmation en Win32, WF… de Charles Petzold et 6 mois après, on était capable de faire des trucs extraordinaires en comprenant parfaitement le fonctionnement du système
Aujourd’hui et c’est un comble, on passe plus de temps à choisir la bonne méthode de développement qu’à développer et on ne comprend plus rien aux systèmes
Il faudrait quand même que Microsoft s’arrête sur un truc, ça arrangerait tout le monde
Et pour avoir une compatibilité un peu près complète ils n'ont pas fait mieux que windows core server et ses 1Go depuis. Je ne parle pas de nano server ou ils manquent trop d'api.
Personnellement je pense à une architecture précise. Azure sphere a commencé à le faire mais ce n'est pas le seul os dans ce cas. Si on lit un peu certains papiers de chercheurs il existe des tendances qui reviennent.
L'idée pourrait être d'avoir une base minimale mais qui ne contient pas la plateforme applicative(bibliothèque d'api uniquement) comme actuellement. La plateforme tournerait dans des conteneurs sous forme d'unikernel https://fr.wikipedia.org/wiki/Unikernel) . Azure sphere est parti sur ce principe(pas d'unikernel mais des conteneurs et un noyau linux léger). On peut imaginer un os universel qui pourrait ainsi gérer différents plateformes dans les conteneurs. Il y aurait une nette séparation ce qui faciliterait le travail de maintenance de l'os. Il ne faut pas oublier que le problème numéro un de windows depuis des années c'est la compatibilité qui l'empêche d'évoluer radicalement. Et à cause de ces problèmes de dépendances et du trop gros poids de windows ça lui a coûté plusieurs échecs sur les dix dernières années...
Il me semble que les esprits s'envolent très vites. Dans l'exemple photo donné, on remarque qu'un logiciel en version preview ne nous donne plus d'avoir directement la possibilité sous Xamarin forms de la plateforme UWP. Etant donné:
1) que la plateforme de nos chers smartphones n'est plus dans l'avenir immédiat d'actualité pourquoi mettre un choix qui n'est plus existant?
2) Rien ne vous interdit de continuer comme au début de Xamarin de rajouter manuellement un projet pour UWP. (voir notice Xamarin forms).
Le titre est très mal choisis et est d'un effet de bombe. Oui la plateforme UWP est retiré du monde de programmation mobiles car n'existe plus en fabrication de nouveaux smartphones sous l'environnement windows 10 MOBILE.
.Net Core, c’est du multi plateforme pour Windows 10, Linux, OS X
UWP, c’est le multi device sous Windows 10
Win32, c’est le One device sous Windows x/10
Par conséquent, ces plateformes ne peuvent pas être en compétition, elles ne font pas la même chose et surtout, elles n’ont pas du tout les mêmes performances et .Net Core est bien trop loin du système pour rivaliser avec Win32/UWP
Oui sans doute que MS a le désir de créer une multitude d’étage logiciel pour satisfaire les développeurs , mais ils y a quand même des limites
Aujourd’hui pour afficher une fenêtre en XAML par exemple sous Windows, il faut une seule ligne de code, en Win32 il en faut 20…
Tu rajoute un traitement plus ou moins complexe et la différence de performance se compte en seconde. C’est ça l’avenir, créer des app/prog très facilement en deux clic, mais sans aucune performance... je ne pense pas
Quand je vois que pour .Net Core, MS intègre petit à petit toutes les technos qui ont fait le succès du dev sous Windows (Winforms, etc) au sein de .Net Core… effectivement, c’est très bien pour des apps boutonnées, mais pour des choses plus lourdes (gaming, …), c’est next
J’ai surtout l’impression qu’il se dessine lentement mais surement un Windows light open source, que MS contrôlera via ses différentes plateformes logicielles propriétaires incontournables
Le prochain Windows One Core OS ira dans cette direction pendant que Windows UWP/Win32 suivra son chemin, jusqu’à une éventuelle transition suivant le succès ou non de Core OS…
Mais ce n’est pas pour demain, c’est une certitude
Tu penses qu'après cette énième promesse, les développeurs vont suivre ?
Ensuite ms a déjà réécrit une bonne partie des applications Windows 10 en UWP et je crois que le menu démarrer lui même est en XAML. Enfin le nouveau Windows core est censé l'utiliser massivement. Il se transformera surement mais je doute fort qu'il disparaîtra.
Par plusieurs sources internes chez Microsoft,j'ai entendu plusieurs fois la même chose. Cette idée a été reporté récemment par Zac Bowden autour de propos de Dave Cutler.
Microsoft a pour objectif depuis déjà quelques années de séparer le matériel, l'os , la plateforme applicative et l'interface en couches qui évolueraient indépendamment.
Actuellement Windows est totalement bridé par Win32. Je ne pense pas qu'ils referont la même erreur d'intégrer totalement UWP dans l'os. Mais c'est déjà plus ou moins le cas. Les applications UWP sont déjà isolées du système. Le système de projection des api avec du métadata IDL crée cette séparation structurelle.
Pour moi l'idée ce n'est pas de remplacer Win32 par une autre techno et dix ans plus tard de retrouver les mêmes problèmes, mais de les mettre tous au même niveau(Win32/.Net/UWP/PWA/Applis Linux). Pour gérer les dépendances au sein de windows core ce sera beaucoup plus simple. Les informations qu'on possède pour le moment parle bien d'un gros travail de modularisation sur l'os.
Pour UWP il semble qu'il pourrait évoluer avec un remplacement à terme du Windows Runtime la base de ce framework par XLang. XLang est multi-plateforme. C'est le cas aussi de MSIX la nouvelle technologie d'installeur en conteneur qui devrait remplacer MSI et APPX.
Si vous avez suivi les propos de Nadella sur le cloud et le multi-plateforme et au vu de ses informations, on peut sérieusement se demander si Microsoft ne voudrait pas créer une sorte d'os universel...
De plus, Windows est en train d'être revu sous forme de briques, Windows Core OS.
Ainsi une UWP app devrait tourner sur n'importe quel futur terminal Windows quelque soit le form factor.
En revanche, je relève que tu ne saisis pas vraiment le but d'UWP
UWP, ce n’est pas qu'une histoire de "responsive"
UWP, c'est une nouvelle méthode multiplateforme de coder sous Windows qui offre ACCESSOIREMENT la possibilité de s'adapter à différentes tailles d'écran et caractéristiques matériels des cibles définis dans le code
UWP, c'est un code unique pour les device sous W10 indépendamment de leur caractéristiques materiels, d'écran, etc...
On peut coder un soft en UWP avec pour cible tous les devices sous W10, ou uniquement la Xbox, ou uniquement le PC, ou uniquement le mobile, Mais visiblement, pour ce dernier, la possibilité n'est plus offerte vu que WM est mort...
UWP étant une plateforme logicielle propriétaire, il n'y a donc rien de choquant à parler de langage maison
"Et bien voilà, avec ça, plus jamais personne ne voudra utiliser leurs langages maison !" Tu parles du C# là ?
J'ai pris le temps de me pencher sur UWP après m'être converti au dev Android et iOS, juste pour voir comment ça fonctionnait, et j'ai réussi à porter un jeu sur Windows et Xbox One, ce qui m'a pas mal impressionné (voir son propre jeu tourner sur sa console de salon c'est un vrai kiff).
Et bien voilà, avec ça, plus jamais personne ne voudra utiliser leurs langages maison !
Il y a aussi PhotoShop 2019 qui ne prend pas en charge le MacPlus
Blague à part, WM est mort, ça me semble bien normal...
L'abandon d'UWP reste de la pur spéculation et c'est surtout faux.
Il faudra quoi au Dev maintenant? Recoder leurs app bientôt?