Articulo de referencia

Plata abierta

{{Cite web|url=https://opensilver.net/announcements/3-3/|title=Blazor Components Now Run Directly Inside XAML Applications|website=OpenSilver|access-date=February 11, 2026}} "},...

OpenSilver (anteriormente CSHTML5 o C#/XAML para HTML5 ) es un framework de código abierto diseñado para facilitar el desarrollo de aplicaciones web enriquecidas (RIA) mediante C# y XAML . Fue desarrollado como sucesor de Microsoft Silverlight , permitiendo a los desarrolladores migrar aplicaciones Silverlight existentes a la web sin necesidad de reescribir su código . Este framework se basa en los estándares web actuales , incluyendo HTML5 , CSS3 y WebAssembly , lo que garantiza una amplia compatibilidad con los navegadores web modernos, independientemente del sistema operativo , sin necesidad de complementos.

OpenSilver es un proyecto impulsado por la comunidad que está disponible gratuitamente para que cualquiera lo use, modifique o mejore. Opera bajo la licencia MIT. Es compatible con la plataforma .NET de Microsoft, lo que permite a los desarrolladores usar C#, VB.NET , [ 2 ] F# , [ 3 ] y XAML para el desarrollo de aplicaciones, manteniendo así una experiencia de desarrollo familiar para aquellos con experiencia en Silverlight o WPF. En los últimos dos años, la versión 2.2 de OpenSilver [ 4 ] se ha posicionado como un marco web avanzado diseñado para aplicaciones empresariales.

Hasta finales de 2024, las versiones 3.0 y 3.1 [ 5 ] traen varias características clave, como el diseñador XAML para Visual Studio Code, mejoras en la compatibilidad con WPF y compatibilidad con .NET 9.

A partir de marzo de 2025, OpenSilver versión 3.2 [ 6 ] introduce soporte para portar aplicaciones Silverlight y WPF a plataformas web, móviles y de escritorio que no sean Windows.

Historia

En 2014, Userware, fundada en 2007 y dirigida por Giovanni Albani, [ 7 ] lanzó CSHTML5, [ 8 ] un precursor de lo que se convertiría en OpenSilver. Esta iniciativa comenzó a trabajar para proporcionar una alternativa contemporánea a Microsoft Silverlight en 2020, [ 9 ] centrándose en el desarrollo de código abierto. A medida que la tecnología avanzaba y crecía la necesidad de marcos de aplicaciones web modernos , CSHTML5 evolucionó, culminando en la creación de OpenSilver 1.0 en octubre de 2021. [ 10 ] OpenSilver tenía como objetivo integrar sin problemas las capacidades heredadas de Silverlight con las demandas del desarrollo web moderno .

La creación de OpenSilver surgió a raíz de la discontinuación de Silverlight y la necesidad de una solución robusta que permitiera a las aplicaciones Silverlight heredadas seguir funcionando en un entorno web moderno. [ 11 ] Al ofrecer una alternativa para estas aplicaciones, OpenSilver contribuye a preservar la inversión realizada en proyectos basados ​​en Silverlight, aprovechando al mismo tiempo los avances en la tecnología web.

Historial de versiones e hitos

Tecnología

OpenSilver: Los componentes lógicos principales: compilador y entorno de ejecución.
OpenSilver: Los componentes lógicos principales: compilador y entorno de ejecución.

OpenSilver integra tres componentes principales:

  1. Compilador : convierte XAML en su equivalente en C# y copia los recursos, como las imágenes, a la carpeta de salida.
  2. Tiempo de ejecución : conecta el DOM de HTML con el código XAML.
  3. Simulador : permite a los desarrolladores depurar aplicaciones web de OpenSilver como si fueran aplicaciones de escritorio.

La base de OpenSilver reside en su capacidad para tomar como entrada ensamblados .NET y archivos XAML (los componentes básicos de las aplicaciones Silverlight) y utilizar Blazor para compilarlos en WebAssembly.

Proceso de compilación

  • Conversión de XAML a C# : convierte archivos XAML en clases C#, conservando el diseño y el estilo de las aplicaciones Silverlight.
  • Ejecución de .NET a WebAssembly : los ensamblados .NET, que incluyen código C#, VB.NET y F#, pueden ejecutarse en navegadores web mediante dos modos principales compatibles con Mono para WebAssembly: el modo intérprete y la compilación anticipada (AOT).

Entorno de ejecución

  • Entorno de ejecución de WebAssembly : el código compilado se ejecuta dentro del entorno de ejecución de WebAssembly del navegador, generando HTML, CSS y JavaScript para renderizar la aplicación.
  • Interoperabilidad con JavaScript : una capa de JavaScript sirve de puente entre WebAssembly y las funciones nativas del navegador, lo que permite acceder a las API del navegador que no son directamente accesibles a través de WebAssembly.
  • Renderizador HTML/CSS : el navegador renderiza el HTML y CSS convertidos, incluyendo el diseño visual, los estilos y los elementos interactivos definidos en el XAML original.

Desarrollo y depuración

  • Facilita el desarrollo y las pruebas : el simulador proporciona un entorno robusto y preciso que imita el comportamiento de Silverlight, lo que ayuda en la transición de Silverlight a OpenSilver.

Arquitectura de alto nivel de OpenSilver

OpenSilver: Diagrama arquitectónico de alto nivel
OpenSilver: Diagrama arquitectónico de alto nivel
  • Aplicación web Blazor (C#) : el punto de entrada crea una instancia de la aplicación OpenSilver y ejecuta el código en WebAssembly.
  • Aplicación OpenSilver (C#, VB, F# y XAML) : integra varios mecanismos para ejecutar aplicaciones Silverlight convertidas en tecnologías web estándar en navegadores modernos sin necesidad de complementos.

Herramientas de desarrollo

OpenSilver ofrece herramientas de desarrollo y un kit de desarrollo de software (SDK [ 13 ] ) para facilitar el desarrollo de aplicaciones. Estas herramientas incluyen plantillas de proyecto de Visual Studio y el simulador de OpenSilver, lo que simplifica el flujo de trabajo para desarrolladores acostumbrados a entornos Silverlight o .NET.

IDE compatible

NOTA : OpenSilver CLI es compatible desde OpenSilver 3.0. Permite la creación y manipulación de proyectos OpenSilver mediante una interfaz de línea de comandos , lo que facilita a los usuarios el uso de sus editores de código preferidos para el desarrollo de software.

Licencias

OpenSilver está licenciado bajo la Licencia MIT , que permite a los usuarios usar, modificar, distribuir y vender el software libremente, siempre y cuando incluyan los avisos originales de derechos de autor y permisos.

Véase también

Referencias

  1. "Los componentes de Blazor ahora se ejecutan directamente dentro de las aplicaciones XAML" . OpenSilver . Consultado el 11 de febrero de 2026 .
  2. "OpenSilver 2.0 agrega VB.NET, servicios RIA y vista previa de XAML en vivo" . InfoQ . Consultado el 20 de octubre de 2023 .
  3. "OpenSilver 2.1 añade soporte para F#" . SD Times . 7 de febrero de 2024. Consultado el 7 de febrero de 2024 .
  4. Ramel, David (30 de abril de 2024). "OpenSilver 2.2 busca revivir las aplicaciones heredadas de Visual Studio LightSwitch" . Visual Studio Magazine . Consultado el 10 de julio de 2024 .; Krill, Paul (30 de abril de 2024). "OpenSilver 2.2 brilla en LightSwitch" . InfoWorld . Consultado el 10 de julio de 2024 .; Kapić, Edin (30 de mayo de 2024). "OpenSilver 2.2 migra las aplicaciones LightSwitch" . InfoQ . Consultado el 10 de julio de 2024 .; Ewbank, Kay (30 de abril de 2024). "OpenSilver 2.2 agrega paquete de compatibilidad LightSwitch" . I-Programmer . Recuperado el 10 de julio de 2024 .; Lee, Michaelis (1 de mayo de 2024). "Continuación del desarrollo de la tecnología Silverlight: lanzamiento de la plataforma OpenSilver 2.2" . Gamingdeputy . Recuperado el 10 de julio de 2024 .
  5. Krill, Paul (11 de diciembre de 2024). "OpenSilver 3.1 trae el diseñador XAML para VS Code" . InfoWorld . Consultado el 13 de diciembre de 2024 .; Barron, Jenna (10 de diciembre de 2024). "OpenSilver 3.1 añade un nuevo diseñador XAML de arrastrar y soltar para VS Code" . SD Times . Consultado el 13 de diciembre de 2024 .; Ewbank, Kay (12 de diciembre de 2024). "OpenSilver agrega un diseñador XAML para Visual Studio Code" . I-Programmer . Recuperado el 13 de diciembre de 2024 .
  6. Krill, Paul (21 de marzo de 2025). "OpenSilver se extiende a iOS y Android" . InfoWorld . Consultado el 26 de marzo de 2025 .; Ramel, David (18 de marzo de 2025). "OpenSilver 3.2 lleva las aplicaciones WPF a dispositivos móviles con la integración híbrida de .NET MAUI" . Visual Studio Magazine . Consultado el 26 de marzo de 2025 .; Kapić, Edin (25 de marzo de 2025). "OpenSilver 3.2 extiende Silverlight y WPF a dispositivos móviles" . InfoQ . Consultado el 26 de marzo de 2025 .
  7. "OpenSilver se asocia con Giovanni Albani" . ¡.NET es genial! Consultado el 9 de diciembre de 2021 .
  8. "¿Echas de menos Silverlight y esperas Blazor? CSHTML5 para el desarrollo web con C# se vuelve de código abierto" . Visual Studio Magazine . Consultado el 12 de marzo de 2019 .
  9. ^ Schwichtenberg, Holger (11 de marzo de 2020). "OpenSilver: Silverlight kehrt como Open Source zurück" [ OpenSilver: Silverlight regresa como código abierto ] . Heise en línea (en alemán) . Consultado el 10 de julio de 2024 .; Schwichtenberg, Holger (11 de marzo de 2020). "OpenSilver: Silverlight kehrt como Open Source zurück" [ OpenSilver: Silverlight regresa como código abierto ] . Heise en línea (en alemán) . Consultado el 10 de julio de 2024 .; Krill, Paul (11 de marzo de 2020). "OpenSilver resucita Silverlight con WebAssembly" . InfoWorld . Consultado el 10 de julio de 2024 .; Krill, Paul; Elyan, Jean (13 de marzo de 2024). "OpenSilver ressuscite Silverlight avec WebAssembly" [ OpenSilver resucita Silverlight con WebAssembly ] . Le Monde Informatique (en francés) . Consultado el 10 de julio de 2024 .
  10. Ramel, David (26 de octubre de 2021). "Llega OpenSilver v1.0 mientras Microsoft finaliza el soporte para Silverlight" . Visual Studio Magazine . Consultado el 10 de julio de 2024 .; Anderson, Tim (16 de septiembre de 2021). "OpenSilver ofrece un salvavidas a los desarrolladores de Microsoft Silverlight ante el inminente fin del soporte, o podrías olvidar que alguna vez sucedió" . The Register . Situation Publishing . Consultado el 10 de julio de 2024 .; Krčmář, Petr (14 de octubre de 2021). "Silverlight je mrtev, ať žije OpenSilver" [ Silverlight está muerto, larga vida a OpenSilver ] . Root.cz (en checo) . Consultado el 10 de julio de 2024 .; Taler, Hubert (14 de octubre de 2021). "Umarł Silverlight, niech żyje OpenSilver" [ Silverlight ha muerto, ¡viva OpenSilver !] . Spider's Web (en polaco) . Consultado el 10 de julio de 2024 .
  11. "OpenSilver" . AlternativeTo . Consultado el 10 de julio de 2024 .
  12. "Novedades" . OpenSilver . Consultado el 20 de marzo de 2025 .
  13. "Descargar OpenSilver SDK" . Sitio web de OpenSilver .

Lecturas adicionales

  • OpenSilver 3.3 integra Blazor nativo en aplicaciones XAML.
  • OpenSilver 3.2 extiende Silverlight y WPF a dispositivos móviles.
  • OpenSilver 3.2 lleva las aplicaciones WPF a dispositivos móviles con integración híbrida .NET MAUI.
  • OpenSilver 3.1: Una nueva era para los desarrolladores de WPF y la migración web.
  • OpenSilver 3.0 lanza un diseñador de interfaz de usuario WYSIWYG con soporte para IA.
  • OpenSilver resucita Silverlight con WebAssembly
  • OpenSilver añade compatibilidad con el lenguaje F#.
  • OpenSilver 2.1: Un marco de trabajo para aplicaciones web empresariales modernas que admiten F#.
  • OpenSilver 2.1 incorpora soporte para F# en la reimplementación de Silverlight.
  • OpenSilver 2.0 añade VB.NET, servicios RIA y vista previa de XAML en vivo.
  • OpenSilver: Silverlight de código abierto a través de WebAssembly
  • De CSHTML5 a OpenSilver
  • Sitio web oficialEdita esto en Wikidata
  • OpenSilver en GitHub

Documentación y recursos

  • Documentación oficial : proporciona una descripción general de OpenSilver, incluyendo cómo empezar, estrategias de migración e información técnica detallada.
  • Tutoriales y guías : disponibles en GitHub , junto con proyectos de muestra, ejemplos y herramientas de ayuda.
  • Foros y soporte de la comunidad : debates sobre problemas en GitHub .
  • OpenSilver Showcase (Explorador de ejemplos) : más de 200 ejemplos interactivos de C#, VB.NET y F# para aprender XAML, .NET y OpenSilver en OpenSilver Showcase .
  • Anuncios oficiales - Canal RSS - https://opensilver.net/pagefeed/