Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Les prochaines étapes du processus visant à rendre WPF entièrement open source se précisent :
On y est presque

Le , par Christian Olivier

15PARTAGES

16  0 
En décembre 2018, après avoir annoncé que .NET Core 3.0 va prendre en charge le développement d’applications de bureau, Microsoft a marqué sa volonté de s’impliquer davantage dans l’univers de l’open source et d’ouvrir .NET Core en rendant ses frameworks de GUI WPF, Windows Forms et WinUI open source. Selon Microsoft, cette initiative devait permettre d’assurer plus de transparence entre l’équipe produit et la communauté et favoriser plus d’engagements de la part de la communauté.

Windows Presentation Foundation (WPF) est la spécification graphique de Microsoft .NET 3.0, une sorte de framework de GUI utilisé avec le .NET Framework. Il intègre le langage descriptif XAML qui permet de l’utiliser d’une manière proche d’une page HTML pour les développeurs. WPF ne sert pas uniquement à afficher l’interface graphique de logiciels de traitement de texte, de jeux ou autres, il fournit également un environnement d’exécution évolué pour la création d’applications Web. Cette interface graphique se présente sous la forme d’un programme d’installation indépendant ou d’une applet Silverlight (un fichier – pour XBAPs XAML Browser Applications – qui s’exécute sur la CLR de Silverlight).

WPF peut être vu comme une surcouche logicielle de DirectX utilisée pour la fabrication d’interfaces utilisateurs en dehors d’applications ludiques. Il peut remplacer Windows Forms (USER et GDI) et est entièrement vectoriel (2D et 3D), pour le dessin comme pour le texte. Il supporte aussi l’affichage de nombreux formats d’images ou vidéo (MPEG, AVI, et bien sûr WMV de Microsoft) et l’intégration de diverses autres fonctionnalités multimédias. Tous ces éléments font de WPF une plateforme unifiée dédiée à la création d’interfaces riches pour les applications de bureau et pouvant être utilisée pour le développement à la fois des applications locales et des applications Web (à travers Silverlight).

Même si Micorsoft a annoncé l’open sourcing de WPF en décembre 2018, cette procédure n’était pas encore achevée parce que certains éléments du runtime de WPF étaient encore verrouillés. L’équipe en charge du développement de WPF/dotnet chez l’éditeur de Windows a récemment confirmé que WPF est désormais entièrement open source, après la fin du traitement des deux composants natifs du runtime de WPF (wpfgfx_cor3.dll et penimc_cor3.dll) qui manquaient encore à l’appel. D’après les ingénieurs de Microsoft, cette ultime étape a également permis de compléter le portage de WPF sur .NET Core – le « ;reboot ;» complet, entièrement open source et multiplateforme de l’environnement .NET distribué via NuGet.


Les développeurs ont cependant précisé que PresentationNative_cor3.dll et bilinearspan.lib, une petite bibliothèque utilisée par wpfgfx_cor3.dll, contiennent encore du contenu propriétaire et ne sont pas open source. « ;Ces éléments ont toutefois fait l’objet d’un travail préparatoire approfondi afin notamment de les assainir en supprimant, par exemple, le contenu qui ne convient pas à l’open-sourcing ;», ont-ils déclaré. L’équipe en charge du développement de WPF/dotNET a en outre évoqué l’arrivée de nouvelles améliorations dans la prochaine mise à jour de .NET Core 3.1 qui est attendue au courant de ce mois.

Source : Microsoft

Et vous ?

Que pensez-vous de cette annonce ?
Utilisez-vous encore WPF ? Quel est votre avis sur ce framework ?

Voir aussi

.NET Core 3.1 est disponible, il s'agit d'une version prise en charge à long terme (LTS) qui apporte des corrections et des améliorations à .NET Core 3.0
Microsoft annonce que .Net Core 3.0 met un terme au projet de portage de l'API .Net Framework sur la plateforme de développement open source et multiplateforme

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de CS FS
Membre averti https://www.developpez.com
Le 13/02/2020 à 9:48
Citation Envoyé par Christian Olivier Voir le message

Utilisez-vous encore WFP ? Quel est votre avis sur ce framework ?
Mon avis n'est pas objectif, c'est mon outils de travail depuis plus de 10 ans maintenant (et je l'aime toujours autant).
Si demain WPF peut être porté sur autre chose que du Windows ça fera de moi un développeur heureux (et des clients sous Mac heureux, car aujourd'hui le seul moyen qu'ils ont pour installer notre solution c'est de passer par de la virtualisation).
5  1 
Avatar de mattdef
Membre averti https://www.developpez.com
Le 13/02/2020 à 10:30
Citation Envoyé par CS FS Voir le message
Si demain WPF peut être porté sur autre chose que du Windows ça fera de moi un développeur heureux (et des clients sous Mac heureux, car aujourd'hui le seul moyen qu'ils ont pour installer notre solution c'est de passer par de la virtualisation).
Citation Envoyé par emilie77 Voir le message
Ce sont deux ans que je cherche de passer a Java pour pouvoir faire des apps cross-platform desktop.
c# et WPF pour Mac et Linux serait parfait

Je pense qu'il va se passer beaucoup de temps (peut-être même jamais ?) avant que WPF soit totalement recodé pour OpenGL ou Vulkan afin d'être compatible Mac et Linux
4  0 
Avatar de kilroyFR
Membre éprouvé https://www.developpez.com
Le 13/02/2020 à 20:24
Utilisez-vous encore WPF ? Quel est votre avis sur ce framework ?
Personnellement nous avons definitivement arreté les devs avec WPF en 2012 lorsque microsoft a laché silverlight pour passer sur du tout web puisque ca correspondait aussi a ce qu'attendaient nos clients (client leger et multi plateforme).
Les quelques applis (qui restent grosses en taille malgré tout) sont desormais la punition pour ceux qui reprennent la maintenance.
Ca n'interesse pas les nouveaux devs qui veulent faire du angular/typescript, C# aspnet MVC Core etc.

Nos applis client lourds se limitent desormais a des petits outils mais en aucun cas a une application d'entreprise.
Pour faire du cross plateforme sur ces outils nous sommes passés comme beaucoup de boite en Qt+
Pour moi M$ a loupé le coche en 2012, c'etait l'occasion d'ouvrir C# officiellement vers l'open source et mono.
Ca a trop trainé et du coup beaucoup de devs se sont tournés comme nous vers des solutions alternatives qui ont fait leurs preuves et pour lesquelles on sent qu'il y a du support.
A trop se diversifier ou vouloir toucher a tout M$ s'est perdu.
3  1 
Avatar de cecedu26
Membre régulier https://www.developpez.com
Le 14/02/2020 à 13:31
Citation Envoyé par micka132 Voir le message
,mis à part angular tu cites du Microsoft comme produit attractif et dans le même temps tu dis qu'ils se sont perdu?
Au passage,
:
Je pense qu'il fait allusion a du developpement web vs client lourd (et je suis d'accord qu'a vouloir faire du web et du client lourd (qu'ils ont malgré tout delaissé) ils ont plus egarés les devs).
Chez nous aussi on a essuyé les platres silverlight et du coup c'est a ce moment la qu'on a definitivement abandonné le client lourd M$. Trop d'errements, pas de reponse sur l'avenir de WPF.
Nous aussi dans mon entreprise on a abandonné le client lourd sauce microsoft.
Nos devs se focalisent sur des technos du moment (donc effectivement angular/aspnetcore en france en tout cas c'est bien la tendance).

j'espère que tu parles pas des produits Google
On peut toujours aussi reinventer la roue carree dans son coin mais pas certains que ce soit bien rentable. Et puis il n'y a pas que google, M$, facebook et autres, il y a malgré tout pleins de technos qui n'appartiennent pas a ces entreprises mais au libre.
2  0 
Avatar de emilie77
Membre confirmé https://www.developpez.com
Le 13/02/2020 à 10:15
Ce sont deux ans que je cherche de passer a Java pour pouvoir faire des apps cross-platform desktop.
c# et WPF pour Mac et Linux serait parfait
1  0 
Avatar de CS FS
Membre averti https://www.developpez.com
Le 13/02/2020 à 10:46
Citation Envoyé par mattdef Voir le message
Je pense qu'il va se passer beaucoup de temps (peut-être même jamais ?) avant que WPF soit totalement recodé pour OpenGL ou Vulkan afin d'être compatible Mac et Linux
Au fond, c'est le sentiment que j'ai. Mais si une chose est certaine, c'est qu'en l'état actuel des choses, WPF a encore moins de chance de s'orienter vers le multi-plateforme ; il n'y a réellement qu'un passage par la communauté qui peut laisser entrevoir la possibilité qu'un jour, peut-être, une réécriture de la couche graphique sera amorcée.
2  1 
Avatar de esperanto
Membre expérimenté https://www.developpez.com
Le 13/02/2020 à 10:56
Citation Envoyé par mattdef Voir le message
Je pense qu'il va se passer beaucoup de temps (peut-être même jamais ?) avant que WPF soit totalement recodé pour OpenGL ou Vulkan afin d'être compatible Mac et Linux
Surtout qu'il semble bien que Microsoft ait encore trouvé un moyen de retarder un tel portage, à défaut de l'empêcher: refuser de l'accueillir dans son Git, ce qui fait que tout portage sera de fait un fork non géré par Microsoft. Dans le meilleur des cas, Microsoft pourra rajouter des fonctions dans l'original et le fork mettra du temps à s'adapter. Dans le pire des cas, ils pourront au moins interdire au fork d'utiliser le nom de WPF.
Dans tous les cas, ceux qui pensent que tout ce qui est écrit en C# devient portable comme Java se sont bien fait avoir...
1  1 
Avatar de redcurve
Membre éclairé https://www.developpez.com
Le 13/02/2020 à 11:02
Citation Envoyé par esperanto Voir le message
Surtout qu'il semble bien que Microsoft ait encore trouvé un moyen de retarder un tel portage, à défaut de l'empêcher: refuser de l'accueillir dans son Git, ce qui fait que tout portage sera de fait un fork non géré par Microsoft. Dans le meilleur des cas, Microsoft pourra rajouter des fonctions dans l'original et le fork mettra du temps à s'adapter. Dans le pire des cas, ils pourront au moins interdire au fork d'utiliser le nom de WPF.
Dans tous les cas, ceux qui pensent que tout ce qui est écrit en C# devient portable comme Java se sont bien fait avoir...
Microsoft ne veut pas prendre la responsabilité du code de la couche graphique sous autre chose que Windows ce qui est compréhensible ils n'ont pas non plus une infinité de dev. Par contre, ils prendront sans problème l'ajout d'une couche d'abstraction permettant de target d'autres couche graphique, mais ne s'occuperont pas de l'implémentation. De toute façon WPF est structurellement prévu pour.
2  2 
Avatar de gabriel21
Membre averti https://www.developpez.com
Le 13/02/2020 à 14:51
Citation Envoyé par Christian Olivier Voir le message

Les développeurs ont cependant précisé que PresentationNative_cor3.dll et bilinearspan.lib, une petite bibliothèque utilisée par wpfgfx_cor3.dll, contiennent encore du contenu propriétaire et ne sont pas open source. « ;Ces éléments ont toutefois fait l’objet d’un travail préparatoire approfondi afin notamment de les assainir en supprimant, par exemple, le contenu qui ne convient pas à l’open-sourcing ;», ont-ils déclaré.
Je serais intéressé de savoir ce que Microsoft considère comme "contenu" ne convenant pas à l'open source.
0  0 
Avatar de CS FS
Membre averti https://www.developpez.com
Le 13/02/2020 à 15:12
Citation Envoyé par Bundy*Al Voir le message
Pourquoi ne pas essayer Qt en C++? Ça te permettrait de faire des apps pour toutes les plateformes.
Si je devais passer de Java à un autre langage et que je voulais conserver une certaine productivité en ne m'éloignant pas trop de ma zone de confort (à fortiori si je ne connais pas le C++) le choix du C# tomberait sous le sens, tant les deux langages ont des traits communs.
A titre d'exemple, je développe des applications Android via Xamarin (en C# donc), et lorsque je bloque sur un point et que je cherche une solution sur le net, beaucoup de réponses à mes questions se basent sur du code Java, or je n'ai absolument aucun mal à adapter ce code en C#.
0  0