La version 3.1 du projet OpenSilver a été publiée, poursuivant le développement de la plateforme Silverlight et permettant de créer des applications web interactives à l'aide des technologies C#, F#, XAML et .NET. Les applications Silverlight compilées avec OpenSilver peuvent fonctionner dans n'importe quel navigateur de bureau ou mobile prenant en charge WebAssembly. L'environnement de développement peut utiliser Visual Studio et l'éditeur de code VS Code, qui prend en charge Windows, macOS et Linux. Le code du projet est écrit en C# et est distribué sous licence MIT.
À l'origine, le projet OpenSilver visait à fournir des outils pour prolonger la vie des applications Silverlight existantes, après que Microsoft a arrêté le développement et le support de la plateforme Silverlight en 2021, ainsi que le soutien aux plugins associés dans les navigateurs. OpenSilver prend en charge toutes les fonctionnalités principales du moteur Silverlight, y compris le support complet des langages C# et XAML, ainsi qu'une mise en œuvre de la plupart des API de la plateforme, suffisante pour utiliser des bibliothèques C# telles que Telerik UI, WCF RIA Services, PRISM et MEF.
Dans sa forme actuelle, OpenSilver a dépassé le cadre d'une couche pour prolonger la vie de Silverlight et peut être considéré comme une plateforme autonome pour créer de nouvelles applications. Par exemple, le projet développe un environnement de développement, assure la prise en charge des nouvelles versions du langage C# et de la plateforme .NET, et fournit une compatibilité avec les bibliothèques JavaScript.
OpenSilver s'appuie sur le code de projets open source Mono (mono-wasm) et Microsoft Blazor (une partie d'ASP.NET Core) ; pour l'exécution dans le navigateur, il utilise la compilation des applications en code intermédiaire WebAssembly. OpenSilver continue le développement du projet CSHTML5, permettant de compiler des applications C#/XAML/.NET en représentation en JavaScript, convenant à un lancement dans le navigateur, et élargit sa base de code avec les capacités de compilation de C#/XAML/.NET en WebAssembly, plutôt qu'en JavaScript.
Dans la nouvelle version :
- Un constructeur d'interface visuel nommé « XAML UI Designer » a été réalisé sur la base de l'éditeur de code Visual Studio Code (VS Code). Contrairement à l'environnement de développement visuel fourni précédemment, basé sur le produit propriétaire Visual Studio, le nouvel environnement est multiplateforme et prend en charge, en plus de Windows, Linux et macOS. Plus de cent composants d'interface prêts à l'emploi sont proposés aux développeurs, y compris divers graphiques et formulaires de données. Un assistant AI est également intégré à l'environnement, permettant de créer et de modifier des interfaces utilisateur à l'aide d'instructions en langage naturel.

- Les capacités d'utilisation du framework « WPF » (Windows Presentation Foundation) dans les applications destinées à fonctionner dans un navigateur ont été améliorées. Le support de composants tels que DynamicResource, MultiBinding et UniformGrid a été ajouté. L'objectif final du projet est d'atteindre une compatibilité totale avec WPF et de permettre le lancement d'applications basées sur WPF dans le web.
- La prise en charge de la plateforme .NET 9 a été ajoutée.
- Un nouveau thème d'interface a été réalisé, basé sur les concepts de design Material Design et Fluent Design. Le thème est disponible en version sombre et claire. Des outils pour créer ses propres thèmes ont été ajoutés.

Source : opennet.ru


