Share via


.NET Core es ahora Open Source

¡Hoy es un día muy grande para .NET! Microsoft ha anunciado que libera el código fuente de .NET incluyendo el motor de ejecución y las librerías.

Este es un esfuerzo conjunto que ha hecho Microsoft liberando otras liberas como:

El siguiente en entrar en la lista es .NET Core Framework, https://github.com/dotnet/corefx

¿Qué es .NET Core?

.NET Core es un framework de desarrollo modular basado en .NET Framework que será el futuro de la plataforma .NET y actualmente está siendo usada por ASP.NET MVC 5 y .NET Native. Es lo que va a permitir que el runtime esté en otras plataformas.

clip_image001

¿Por qué se hace Open Source .NET Core?

Hay dos razones principalmente que resumen la decisión de liberar .NET Core:

  1. Sentar las bases para un soporte multi plataforma de .NET
  2. Construir un ecosistema más fuerte alrededor de .NET

Sentar las bases para un soporte multi plataforma de .NET

Como desarrollador de .NET ahora mismo eres capaz de escribir código que se compila y se ejecuta en Windows, Linux, MacOS, iOS y Android.

Uno de los desafíos actualmente es que Windows tiene su propia implementación de .NET mientras que Mono tiene otra implementación diferente en otras plataformas. La comunidad de Mono ha tenido que reimplementar toda la funcionalidad del runtime y de la librería de clases, porque no había una versión Open Source. Es cierto que antes de .NET Core, existía Rotor la versión hecha por Microsoft como ejemplo de referencia de una máquina virtual de .NET pero no usaba una licencia aprobada por la OSI. Los clientes han reportado cambios en la implementación de las dos versiones que hacían difícil encontrar errores en las versiones de .NET Framework. Además esto resultaba en un montón de trabajo duplicado que no era específicas de la plataforma. Un ejemplo reciente son las colecciones inmutables.

La mejor manera de construir un framework de desarrolla multi plataforma es teniendo una única pila de software y trabajar de manera colaborativa. Y la manera de conseguir esto es haciendo .NET Core Open Source.

Construir un ecosistema más fuerte alrededor de .NET

El equipo de .NET Core ha perseguido unos ciclos de desarrollo más ágiles a través de paquetes de NuGet, durante los dos años anteriores. Hemos visto recompensado el haber liberado el código de manera temprana y permitir a los clientes dar Feedback sobre el mismo.

Y si lo piensas bien: hacer el código abierto es última manera de acercarse a un estilo de desarrollo ágil. Desde luego, no todos los clientes quieren interactuar con nosotros de forma tan cercana. Pero los que estén dispuestos a hacerlo tienen una herramienta para hacerlo.

Nuestra elección de usar GitHub

Desde Microsoft hemos decidido liberar el código de .NET Core en GitHub por la sencilla razón que es donde la comunidad está y por eso nosotros queremos estar ahí.

Colabora con nosotros

Uno de los motivos por el cual se ha liberado el código de .NET Core es para crear una comunidad desarrolladores más fuerte alrededor de .NET. Para ellos cualquier desarrollador puede participar del desarrollo de varias maneras.

  • Revisiones de código. Queremos tener revisiones de código para que el equipo pueda comentar los conjuntos de cambios. Se utilizará el sistema de pull-request de GitHub.
  • Bugs. Nuestro compromiso es usar GitHub como sistema de tracking de los bugs que se encuentren en el sistema.

¿Cómo empezar a trabajar con .NET Core?

Para empezar a trabajar lo primero que se necesita es poder compilar el código fuente de .NET Core en tu máquina. Para eso sigues estos sencillísimos pasos:

La compilación requiere tener instalado Visual Studio 2013. El proceso compilará las librerías y ejecutará los test unitarios. Hay una guía para desarrolladores disponible.

Luis Guerrero.

Technical Evangelist Microsoft Azure.

@guerrerotook

Comments

  • Anonymous
    November 15, 2014
    The comment has been removed
  • Anonymous
    November 20, 2014
    Hola, la guía de desarrolladores con la liga, aparece un 404: Hay una guía para desarrolladores Aquí >>>>disponible<<<<.