|
.NET Framework, introducido en 2002, se ejecuta sólo en Windows y, aunque todavía es compatible, ya no está en desarrollo activo. Sin embargo, .NET multiplataforma, lanzado en 2016, es de código abierto, se ejecuta en Linux, es liviano y de mayor rendimiento. Recibe actualizaciones periódicas, con nuevas funciones y mejoras de rendimiento cada año. Al migrar sus aplicaciones .NET desde .NET Framework a .NET multiplataforma, puede migrar de Windows a Linux. Como resultado, no sólo podrá aprovechar las últimas innovaciones en la plataforma .NET, sino que también podrá reducir su gasto en licencias de Microsoft.
En Amazon Web Services (AWS), lo ayudamos a migrar y modernizar sus aplicaciones .NET de Windows a Linux con herramientas como Porting Assistant para .NET, AWS Toolkit para .NET Refactoring y AWS Microservice Extractor para .NET.
Hoy anunciamos la vista previa pública de las nuevas capacidades de transformación de Amazon Q Developer para cargas de trabajo .NET, mainframe y VMware.
En esta publicación, le presento las capacidades de transformación de .NET de Amazon Q Developer, una nueva experiencia generativa impulsada por IA para migrar sus aplicaciones .NET Framework a .NET multiplataforma dentro de su entorno de desarrollo integrado (IDE).
Amazon Q Developer transform para .NET analiza automáticamente el código base, genera un plan de transformación y ejecuta tareas de transformación. Estas tareas incluyen actualizar y reemplazar paquetes y API de NuGet, reescribir componentes de código obsoletos e ineficientes y migrar a .NET multiplataforma.
¡Veámoslo en acción!
Portar una aplicación .NET Framework a .NET multiplataforma
Estoy usando Visual Studio en este tutorial porque la transformación de Amazon Q Developer para .NET está disponible como una extensión de Visual Studio. Instalo la última versión de Kit de herramientas de AWS con Amazon Q e iniciar sesión con las credenciales de AWS IAM Identity Center proporcionadas por mi organización.
Abro una solución .NET Framework que necesito migrar a la última versión de soporte a largo plazo (LTS) de .NET multiplataforma compatible, que actualmente es .NET 8. En el Explorador de solucionesla opción de transformar está disponible como elemento del menú contextual tanto para la solución completa como para proyectos individuales. Dependiendo del tamaño y la complejidad de la aplicación, puedo transformar toda la aplicación de una vez o transformar los proyectos en la aplicación paso a paso. En este tutorial, muestro la transformación de uno de los proyectos de la solución.
Elijo el menú contextual para uno de los proyectos y luego elijo Proyecto portuario con Amazon Q Developer.
Esto abre un cuadro de diálogo donde elijo proyectos adicionales para transformar y selecciono la versión .NET de destino. yo selecciono .NET 8 y elige Confirmar para proceder con la transformación.
Veo el estado en el Código Plan de Transformación ventana y el progreso en Centro de transformación de código para desarrolladores de Amazon Q ventana.
Aunque seleccioné solo un proyecto para transformar, Amazon Q Developer también transformará todos los proyectos dependientes. El proyecto seleccionado y sus proyectos dependientes se combinan para formar una unidad edificable descomponible. Esto es para garantizar que el código base después de la transformación esté en un estado de compilación exitoso.
Amazon Q Developer primero construye el proyecto localmente y luego copia el código seleccionado y las dependencias en un entorno de pruebas seguro y efímero en AWS para su procesamiento. Puede utilizar claves administradas por el cliente para cifrar su código en este entorno.
Amazon Q Developer analiza el código base y genera un plan de transformación. Luego inicia el flujo de trabajo de transformación y recorre el plan de forma iterativa para cada proyecto del plan de transformación. Para cada proyecto, actualiza los paquetes y las API de NuGet, actualiza la configuración de inicio o tiempo de ejecución, reescribe el código obsoleto y depura errores.
Una vez completada la transformación, elijo Resumen de transformación por Q Developer para ver el resumen. Veo el estado de transformación como exitoso. Para cada proyecto, muestra Archivos cambiados, Paquetes actualizados, Las API cambiarony Estado de portabilidad de Linux. En la columna de estado de portabilidad de Linux, puedo ver si el proyecto se porta automáticamente o necesita información para resolver algún problema pendiente.
Puedo descargar el informe de preparación de Linux para analizar los problemas que requieren resolución manual.
Todos los cambios de código se realizan en la zona de pruebas y puedo revisarlos antes de aplicar las actualizaciones a mi repositorio de trabajo local. Para revisar manualmente los cambios realizados por Amazon Q Developer, elijo Ver diferencia ver y luego elegir Mostrar cambios para uno de los archivos en el Centro de transformación para desarrolladores de Amazon Q ventana.
Después de revisar los cambios, elijo Aceptar los cambios sugeridos en el Resumen de transformación por Q Developer ventana para aplicar cambios a mi repositorio de trabajo local.
Ahora puedo continuar trabajando en mi repositorio de trabajo local para solucionar los problemas pendientes en el informe de preparación de Linux y luego seguir los mismos pasos para transformar los proyectos restantes de forma iterativa.
Cosas que debes saber
- Disponibilidad – Las capacidades de transformación de Amazon Q Developer para la portabilidad de .NET están disponibles hoy en versión preliminar con la suscripción a Amazon Q Developer Pro Tier.
- Versiones .NET compatibles – Las capacidades de transformación de Amazon Q Developer para .NET admiten la transformación de aplicaciones escritas con .NET Framework versiones 3.5+, .NET Core 3.1 y .NET 5+ a las versiones de .NET multiplataforma actualmente admitidas, como .NET 8 y .NET 9. .
- Tipos de aplicaciones admitidas – Las capacidades de transformación de Amazon Q Developer para .NET admiten la migración de proyectos de código C# de los siguientes tipos: aplicación de consola, biblioteca de clases, pruebas unitarias, API web, servicio Windows Communication Foundation (WCF) y capas de lógica empresarial de Model View Controller (MVC). y Aplicación de Página Única (SPA). Sin embargo, la capa de interfaz de usuario, como Razor Views y WebForms, no se trasladan. Además, solo se admiten proyectos con dependencias de paquetes NuGet creados por Microsoft. Para las aplicaciones .NET Framework que dependen de Internet Information Server (IIS), solo se admiten configuraciones IIS predeterminadas para la migración a .NET multiplataforma.
Para comenzar, instale AWS Toolkit para Visual Studio y siga las instrucciones de la documentación para migrar y actualizar sus aplicaciones .NET.
– Prasada
GIPHY App Key not set. Please check settings