ASP.Net vNext Alpha 3 – Agosto 2014
Si has estado ocupado en tus proyectos y este 2014 te ha pasado desapercibido, es bueno que te vayas enterando de lo que viene en el mundo del .Net y uno de los proyectos mas importantes que se encuentra actualmente en desarrollo es vNext que es la siguiente version de ASP.Net
Entre las nuevas caracterÃsticas se encuentran algunas como:
- Es Open Source y corre en Windows (.Net Framework), Mac y Linux (Mono Framework)
- No compila, leÃste bien NO COMPILA, todo esto gracias al nuevo compilador Open Source Roslyn que corre en memoria.
- Optimización opcional para la nube gracias al CoreCLR(^1) que corre muy bien en Azure.
- Puedes usar una Mac y Sublime Text en vez de Windows y Visual Studio.
- Sin dependencias a System.Net(^2).
- Inyección de dependencias en todos lados.
- Multiples runtimes corriendo lado a lado sin interferir uno con otro(^3).
- Administrado por paquetes NuGet y un nuevo archivo de configuración estilo Node.js (o Ruby o Laravel) llamado project.json.
Si deseas probar todas estas novedades lo puedes hacer con el Community Technology Preview de Visual Studio 14 (Visual Studio “14” CTP 3 para hacerlo corto) que ya incluye el intellisence para el Project.json y otras novedades.
Se que hay algunos términos y novedades que tal vez no conozcan por lo que aquà unas pequeñas notas a pie de pagin… post.
(^1) CoreCLR Como parte de las novedades en vNext Microsoft retomo el CoreCLR que es una selección de assemblies mÃnimos necesarios para realizar la mayor cantidad de tareas, en el caso de vNext se esta partiendo el .Net Framework en pedacitos optimizados para la nube, de esta forma mediante el archivo Project.json se podrán seleccionar los elementos del CLR que estrictamente se necesitan en la aplicación que estas desarrollando, esto permite que las aplicaciones sean más pequeñas y consuman menos memoria, algo que para entornos de nube genera muchos beneficios.
(^2) System.Net Uno de los problemas que Mono y la comunidad Open Source tuvieron y discutieron fue la dependencia de MVC y ASP.Net al assembly propietario de Microsoft System.Net, el problema raiz es que al ser propietaria, Microsoft podrÃa demandar a cualquiera que hiciera una implementación de la misma para ejecutarla en Mono. Lo divertido del asunto es que este assembly es ya tan complejo y tan dependiente de IIS que ni los encargados del .Net Framework han podido crear una version deslindada del IIS de allà un inicio desde cero open source libre de estos problemas.
(^3) Normalmente cuando tienes un servidor IIS en el que ejecutas aplicaciones de Asp.Net tienes instalado el .Net Framework o varias versiones del .Net Framework, el problema reside en que todas tus aplicaciones que corren por ejemplo en el framework 4.0 serán afectadas por cualquier cambio en la configuración de ese framework. Con vNext podrás tener Frameworks modulares (gracias a CoreCLR y Project.json) que correrán en paralelo, asà podrás tener una app de framework 5.0(nombre no definitivo) corriendo junto a otra que corra el mismo framework y cada con sus propias configuraciones.
Se vienen cosas interesantes en el mundo del .Net y todavÃa es buen tiempo para seguir estas novedades.
Dudas preguntas y comentarios los pueden hacer aquà o por twitter en @binamonk
Visto, traducido y comentado del blog de Scott Hanselman.