iniciado hace varios años , dirigido a crear una implementación abierta de la plataforma , cuyo desarrollo fue interrumpido por Microsoft en 2011, y su soporte continuará hasta 2021. Al igual que en el de Adobe Flash, el desarrollo de Silverlight se detuvo en favor de la adopción de tecnologías web estándar. En su momento, se desarrolló una implementación abierta de Silverlight basada en Mono — , pero su desarrollo debido a la falta de interés por parte de los usuarios en la tecnología.
El proyecto OpenSilver intenta nuevamente revivir la tecnología Silverlight, permitiendo crear aplicaciones web interactivas utilizando C#, XAML y .NET. Uno de los principales objetivos del proyecto es extender la vida de las aplicaciones existentes de Silverlight en un contexto de finalización del soporte de la plataforma y del cese del soporte por parte de los navegadores para plugins. Sin embargo, los partidarios de las tecnologías .NET y del lenguaje C# también pueden usar OpenSilver para crear nuevos programas.
Como base, OpenSilver utiliza el código de proyectos abiertos () y (parte de ASP.NET Core), y para ejecutarse en el navegador se aplica la compilación de aplicaciones a código intermedio . OpenSilver se desarrolla junto con el proyecto , que permite ejecutar aplicaciones C#/XAML en navegadores a través de su compilación a JavaScript. OpenSilver utiliza la base de código existente de CSHTML5, reemplazando los componentes de compilación en JavaScript por WebAssembly.
Código del proyecto bajo la licencia MIT. Las aplicaciones web compiladas pueden funcionar en cualquier navegador de escritorio y móvil que soporte WebAssembly, pero actualmente la compilación solo se realiza en Windows usando el entorno Visual Studio 2019. En su forma actual, se ha asegurado el soporte para aproximadamente el 60% de las interfaces de programación más solicitadas de Silverlight. Este año se planea añadir soporte para servicios Open RIA y Telerik UI, así como sincronizarse con la nueva base de código de los proyectos Blazor y Mono para WebAssembly, donde se espera soporte para compilación anticipada (Ahead-of-Time, AOT), lo que en pruebas permitirá aumentar el rendimiento hasta 30 veces.
Fuente: opennet.ru
