Introducci贸n a .NET CORE.

.NET Core es la plataforma de desarrollo de Microsoft m谩s moderna, de c贸digo fuente abierto, multiplataforma y de alto rendimiento para la creaci贸n de todo tipo de aplicaciones, que fue liberada en el a帽o 2016, y es el resultado de m煤ltiples esfuerzos para hacer m谩s 谩gil el desarrollo en .NET puesto que el .NET Framework, depende totalmente del sistema operativo Windows.

.NET Core, a diferencia del .NET Framework, no tiene este tipo de dependencia del sistema Windows y es modular, usando el sistema de paquetes NuGet, gracias al cual, recibiremos las diversas actualizaciones de .NET Core, a diferencia de .NET Framework que se actualiza a trav茅s de Windows Update.

Esta arquitectura modular permite que podamos incluir 煤nicamente lo necesario que requieren nuestras aplicaciones, haciendo que tengan un peso menor a la hora de ser desplegadas y que sea m谩s sencilla su actualizaci贸n a trav茅s de updates de NuGet. Adem谩s , al ser multiplataforma, no depende de cosas espec铆ficas del sistema operativo, como sucede con el .NET Framework.

.NET Core nos permite realizar todo tipo de aplicaciones, como aplicaciones web que podr谩s desplegar en Windows, Linux, Mac Os. Podr谩s desplegar tus aplicaciones usando contenedores Docker en distintas plataformas Cloud como Azure, Amazon, GCP.

Puedes usarla para crear aplicaciones de escritorio UWP que te permitir谩 correr tu aplicaci贸n en Windows 10, XBOX y HoloLens compartiendo el c贸digo y sin tener que reescribir tus bibliotecas. Se puede usar para Internet Of Things, Inteligencia Artificial, desarrollo de juegos.

NET core en VB.NET. La nueva forma de programar sin .NET Framework

La 煤ltima versi贸n de este producto se llama .NET 5, que es una unificaci贸n de las tecnolog铆as anteriores de .NET Framework y .NET CORE.

Entre las caracter铆sticas de .NET 5 caben destacar:

● Web Forms ya no se utiliza en CORE con ASP.NET CORE. Ahora se utiliza Razor.
● Migrar un servicio WCF a .NET CORE tendr铆as que usar el Web API o gRPC, pero requiere actualizar el c贸digo.
● Las aplicaciones anteriores a .NT CORE no son compatibles entre s铆.
● Es recomendable empezar a aprender .NET CORE con C#.

Qu茅 es .NET Standard

.NET Standard es una nueva especificaci贸n que viene a poner orden en el ecosistema de .NET. Lo que implica es tener una especificaci贸n y una serie de reglas comunes para todas las bibliotecas de clases base existentes para este ecosistema.

Estructura de los 煤ltimos modelos de .NET CORE

Esta necesidad es debida a la existente fragmentaci贸n de las distintas implementaciones de las bibliotecas de clases base que existen las diferentes plataformas .NET (.NET Framework, Mono usado en Xamarin, y .NET Core).

Debido a esto, el poder reutilizar c贸digo es muy complicado, por lo que el simple hecho de arreglar un bug o a帽adir nuevas funcionalidades, implicaba que se tuviera que hacer en cada una de estas plataformas, con el consiguiente incremento de tiempo de desarrollo y posibilidad de no estar completamente alineadas.

Estructura del nuevo .NET 5

A trav茅s de esta especificaci贸n, tenemos la seguridad de escribir c贸digo multiplataforma, las novedades nos llegar谩n antes, nuestros conocimientos sirven para varias plataformas y podemos reusar c贸digo entre todas ellas. En .NET Standard, las versiones m谩s nuevas incluyen todas las API de sus versiones anteriores.

Las diferentes versiones superiores no suelen ser compatibles entre s铆 ya que la versi贸n incluye una versi贸n inferior compatible.

Qu茅 es .NET 5

.NET 5 va a ser la unificaci贸n de .NET Framework, .NET Core y Mono en una sola plataforma de desarrollo multiplataforma. Esta evoluci贸n de .NET Core contar谩 con una sola biblioteca de clases basada en .NET Standard, herramientas unificadas. Adem谩s, .NET contar谩 con la posibilidad de interoperar con c贸digo escrito en otros lenguajes, como Java o Swift.

.NET 5 ser谩 la plataforma de desarrollo para la construcci贸n de todo tipo de aplicaciones. Podremos crear aplicaciones multiplataforma como aplicaciones y servicios web, escritorio, juegos, aplicaciones cloud, m贸viles, etc., etc.

Estructura del producto .NET 5

Aunque a decir verdad, Microsoft ya anunci贸 que su producto tendr谩 versiones que iran lanzando en el tiempo. As铆 podemos decir que en 2022, liberaran la versi贸n .NET 6, en 2023 .NET 8, etc.

Li eraci贸n de paquetes y productos Microsoft en el tiempo

驴Qu茅 lenguajes puedo usar en .NET Core?

Como bien sabes, los lenguajes por los que Microsoft se ha decantado en sus productos por orden de preferencia son C#, F# y C++. Por desgracia el lenguaje VB, aunque todav铆a sigue apareciendo como lenguaje para programar aplicaciones .NET, Microsoft ha anunciado que no va ha recibir nuevas caracter铆sticas que se incluyan en la evoluci贸n de .NET CORE, por lo que no se recomienda empezar con 茅ste lenguaje si no se tiene conocimientos del mismo. 馃槶馃槶馃槶馃槶馃槶馃槶馃槶馃槶

Hoy en d铆a programar en C# es una buena alternativa ya que en el mundo empresarial es uno de los lenguajes m谩s usados, junto con Python y Java. Puedes aprender a programar en los dos lenguajes desde el curso de JavaVSC# en esta misma p谩gina.

Lenguaje C#.
Es un lenguaje de programaci贸n multiparadigma y muy sofisticado que ha evolucionado en conjunto con la estrategia de .NET. Tiene nuevas caracter铆sticas, como tipos por referencia nullables, rangos, 铆ndices, streams as铆ncronos, etc., siendo la opci贸n por defecto a la hora de crear aplicaciones en .NET Core y de la que m谩s documentaci贸n vas a encontrar.

Lenguaje F#.
Es un lenguaje funcional que ha ido creciendo desde su creaci贸n en el a帽o 2005. Con caracter铆sticas 煤nicas y potentes, puede ser usado para crear cualquier tipo de soluci贸n de software y adem谩s, cuenta con una comunidad muy activa.

Lenguaje C++.
Dicho lenguaje es una evoluci贸n del lenguaje C incluyendo una mejora del nucleo anterior, orientaci贸n a objetos y nuevas caracter铆siticas que lo hacen 煤nico para programar en un lenguaje de C.

As铆 que Microsoft ha vetado el lenguaje de Visual Basic, ya no sirve de nada seguir estudiando 茅ste lenguaje, pero es muy bueno conocer sus funcionalidades y forma de programar ya que en el pasado lenguajes como Cobol, Pascal o incluso Python, estuvieron a punto de desaparecer, y hoy en d铆a, son unos lenguajes que siguen usandose, est谩n muy bien referenciados y cuya demanda es alta ya que no existen programadores (Cobol y Pascal), y las ofertas solicitadas son de competencia econ贸mica muy elevada.

Adem谩s, el saber no ocupa lugar. Aprender a programar VB.NET te va a ayudar a programar en otros lenguajes como el C# o Java.

Editores usados con .NET.

Visual Studio es el entorno de desarrollo integrado o IDE siglas de Integrated Development Envionment en ingl茅s, que por excelencia es usado en el sistema operativo Windows.

Visual Studio Code es otra herramienta de desarrollo que podemos usar, tiene una gran adopci贸n y aceptaci贸n, es de c贸digo fuente abierto y cuenta con un ecosistema de extensiones y componentes muy grande.

Por otro lado, si eres usuario de Mac tambi茅n existe Visual Studio for Mac para dicho sistema operativo. S铆 debes saber que Visual Studio for Mac y Visual Studio para Windows tienen diferentes plantillas de proyectos, ya que en Visual Studio de Windows puedes crear aplicaciones de escritorio, por ejemplo, con WPF o Windows Forms, mientras que en Visual Studio for Mac, no.

Editores m谩s usados para programar en .NET nuevo

Dependiendo del IDE escogido, programar en .NET CORE tiene una serie de ventajas:

● Tus aplicaciones .NET pueden ser multiplataforma.
● ASP.NET Core supera a ASP.NET en .NET Framework en caracter铆sticas y rendimiento.
● .NET Core es el foco de la innovaci贸n.
● Los ciclos de lanzamiento de nuevas versiones son m谩s r谩pidos.
● Est谩 orientado a obtener el mejor rendimiento.

Bien, en esta clase has aprendido las caracter铆sticas que tiene el nuevo .NET. En la 煤ltima pr谩ctica del curso de VB.NET aprender谩s a instalar y utilizar nuevas funcionalidades de los productos .NET.

  

Comparte en redes sociales