La version du projet OpenSilver 3.0 a été présenté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, mais la compilation n'est pour le moment possible que sous Windows en utilisant l'environnement Visual Studio. Le code du projet est écrit en C# et distribué sous licence MIT.
En 2021, Microsoft a interrompu le développement et le support de la plateforme Silverlight au profit de l'utilisation de technologies web standard. Au départ, le projet OpenSilver visait à fournir des outils pour prolonger la vie des applications Silverlight existantes dans un contexte d'abandon du support par Microsoft et de la fin du support des plugins dans les navigateurs. OpenSilver prend en charge toutes les principales fonctionnalités du moteur Silverlight, y compris le support complet des langages C# et XAML, ainsi qu'une large partie de l'API de la plateforme, suffisamment pour utiliser des bibliothèques C# telles que Telerik UI, WCF RIA Services, PRISM et MEF.
Dans sa forme actuelle, OpenSilver a déjà dépassé le cadre du simple prolongement de la vie de Silverlight et peut être considéré comme une plateforme autonome pour la création de nouvelles applications. Par exemple, le projet développe un environnement de développement (un complément à Visual Studio), assure le support des nouvelles versions du langage C# et de la plateforme .NET, et fournit la compatibilité avec des bibliothèques écrites en 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 a été proposé, permettant de concevoir des interfaces d'applications .NET et des sites web en mode glisser-déposer, en utilisant plus de 100 blocs d'interface intégrés.
- Un assistant AI a été ajouté, permettant de générer et de modifier des interfaces utilisateur par le biais de commandes en langage naturel. L'utilisateur n'a qu'à décrire librement les modifications souhaitées ou à proposer une image avec une maquette, et l'assistant AI mettra à jour ou générera le code XAML.

- Les outils d'intégration avec les environnements de développement intégrés externes ont été étendus. La prise en charge de l'éditeur de code Visual Studio Code a été ajoutée.
- L'application web XAML.io a été mise en service, permettant de concevoir des interfaces utilisateur basées sur XAML depuis le navigateur.
- Une version préliminaire de l'outil XAML 3D a été proposée, permettant de créer des sites 3D et des applications de réalité mixte, utilisant WebXR et compatibles avec divers casques 3D, tels que Meta Quest et Apple Vision Pro.

Source : opennet.ru


