Más de una vez aparece esta pregunta entre aspirantes a programadores, o incluso entre programadores en otras tecnologías que buscan acercarse a algún lenguaje de.NET, pero no tienen bien claro de qué va la cosa. Como suele ser difícil encontrar una respuesta didáctica a esta pregunta, decidí crear este video para que, luego de verlo, puedas entender qué es.NET, cuáles son sus características, qué posibilidades brinda al desarrollador y por dónde hay que comenzar a explorarlo. Antes que nada,.NET es una plataforma de desarrollo, lo que significa que básicamente es un conjunto de lenguajes, librerías, herramientas y otras plataformas. .NET es todo un ecosistema de desarrollo. Es gratis y de código abierto y con.NET podemos crear todo tipo de aplicaciones. Y cuando digo todo tipo de aplicaciones, no estoy exagerando. Desde aplicaciones web hasta aplicaciones móviles, pasando por Machine Learning, desarrollo de videojuegos, aplicaciones de escritorio y aplicaciones en la nube. .NET ofrece un marco de desarrollo común que permite realizar con las mismas habilidades y conocimientos una aplicación para, por ejemplo, una Raspberry Pi, para cualquier dispositivo móvil o para ser desplegada en la nube. .NET soporta principalmente tres lenguajes de programación. Esto significa que podemos escribir aplicaciones.net en cualquiera de estos lenguajes. Visual Basic es el más antiguo de los tres. Tiene una larga tradición y evoluciona del viejo Visual Basic que seguramente has escuchado alguna vez. Microsoft lanzó Visual Basic.net en 2002, justamente para modernizarlo y para convertirlo en un lenguaje amigable, fuertemente tipado y orientado a objetos. C Sharp es sin dudas el más popular de los lenguajes de.NET. Es un lenguaje simple, moderno, completamente orientado a objetos, aunque también soporta las características principales de la programación funcional, y es fuertemente tipado. Es uno de los lenguajes más utilizados del mundo, especialmente en el entorno corporativo. Fsharp es un lenguaje multiplataforma de programación funcional fuertemente tipado que además incluye elementos de la programación orientada a objetos y de la programación imperativa. Los tres son lenguajes de código abierto. .NET es multiplataforma, lo que significa que no importa si escribes tu código en C Sharp, Visual Basic.NET o F Sharp, según la implementación de.NET que elijas, tu aplicación podrá ejecutarse de manera nativa en Windows, Mac, Linux, Android o iOS. Por eso es importante que sepas qué implementación elegir. .NET Framework es la primera versión de.NET, liberada en el año 2002, y sirve para construir y ejecutar aplicaciones sobre Windows exclusivamente. La última versión disponible del Framework es la 4.8, y Microsoft ya ha anunciado que no habrá más versiones después de esta, ya que la intención es que ahora se trabaje en.NET Core. .NET Core es la implementación más importante de.NET. Es absolutamente multiplataforma, por lo que las aplicaciones construidas en.NET Core pueden ser ejecutadas en cualquier sistema operativo e incorpora un gran ecosistema de librerías para desarrollar prácticamente lo que quieras. A la fecha,.NET Core es la apuesta más reciente de la plataforma.NET y se espera que, al menos por muchos años más, esta sea la implementación definitiva. Summary o Mono es la implementación de la plataforma.NET que se usa para construir y ejecutar aplicaciones en todos los sistemas operativos móviles más importantes. Desde el punto de vista del programador, no hay prácticamente ninguna diferencia entre programar en una implementación o en la otra. Es más bien para lograr la compatibilidad con el sistema operativo que necesitemos, que tendremos que elegir entre ellas. De cualquier manera, si no es una aplicación móvil, para cualquier otro tipo de aplicaciones, lo recomendado a la fecha es utilizar.NET Core. ya que contiene las librerías y las utilidades más modernas. A pesar de haber detenido el desarrollo de nuevas funcionalidades en el framework.NET, Microsoft aún mantiene esa implementación y arregla potenciales problemas, es decir, que está completamente operativa. En otras palabras,.NET Framework y.NET Core conviven hoy por hoy como dos implementaciones de la plataforma que son interoperables. Es decir, en la misma solución pueden existir proyectos.NET Core y proyectos.NET Framework. Además, al existir una gran cantidad de aplicaciones ya construidas sobre el framework.NET, Microsoft no podía reemplazarla con.NET Core así como así. Y es por esto que planteo este modelo que aparece en pantalla, en donde una serie de librerías, que son la gran mayoría hoy por hoy, son compatibles tanto con el framework.NET como con.NET Core. Esta API compartida se conoce como.NET Standard. Es decir, que si tienes una solución robusta ya escrita en.NET Framework y no tienes ningún interés en migrarla a.NET Core, puedes crear un proyecto en.NET Core y con mucha facilidad reusar todas tus librerías del framework en el nuevo proyecto. Si nos ponemos un poco más técnicos, podemos explorar brevemente cómo es la arquitectura de una aplicación.NET y cuáles son sus elementos principales. Pero sobre todo, podemos ver la transformación que sufre el código desde que lo escribimos hasta que es ejecutado por el sistema operativo. Como ya dijimos, una aplicación.NET puede escribirse en C Sharp, en F Sharp o Visual Basic.NET. Este código es procesado por el compilador del lenguaje y compilado al CIL o Common Intermediate Language, que como su nombre lo indica, es un lenguaje intermedio agnóstico del lenguaje inicialmente usado. El código compilado es almacenado en assemblies, que son básicamente archivos de extensión.dll o.exe. Luego, cuando la aplicación se ejecuta, el CLR o Common Language Runtime toma el o los assemblies y utiliza el compilador Just-In-Time para convertir esos assemblies en código de máquina que pueda ser ejecutado en el sistema operativo particular en el que la aplicación se está ejecutando. Para escribir en.NET tenemos muchas alternativas según cuáles sean nuestros gustos o preferencias. Visual Studio es el entorno de desarrollo por defecto construido por Microsoft exclusivamente para desarrollar en.NET. Desde mi punto de vista, es el más poderoso en cuanto a cantidad de herramientas y características a las cuales podemos acceder. A la hora de descargar Visual Studio, contamos con varias ediciones para elegir, siendo Community su alternativa gratis. Esto se los muestro más en detalle en el próximo video. Para los amantes de la flexibilidad, aparece Visual Studio Code, también desarrollado por Microsoft, enteramente en TypeScript, pero ya con la intención de convertirlo en un entorno de desarrollo más versátil con el que se pueda trabajar en cualquier lenguaje y no solo en los de.NET. Con muy poca configuración inicial, podemos desarrollar todo tipo de aplicaciones.NET en Visual Studio Code. Y también para los que prefieran desarrollar en Mac, Visual Studio ofrece su versión original, completamente portada y compatible con el sistema operativo de Apple. Además de estos tres enormes entornos, quienes prefieran usar la línea de comandos para programar sus aplicaciones,.NET también ofrece un CLI o Command Line Interface, para que no exista la necesidad de utilizar una interfaz gráfica. Y finalmente, para quienes no quieran moverse de sus editores preferidos como Atom, Sublime Text o Vim, el proyecto OmniSharp contempla un conjunto de librerías que habilitan una gran experiencia a la hora de programar en.NET en el editor que elijas. .NET está orientado al desarrollador y realmente busca hacer su vida más fácil. Comenzar a trabajar en la plataforma es fácil e intuitivo, sea cual sea el tipo de aplicación que elijas. En general, la configuración inicial estará hecha y podrás enfocarte en escribir tu código sin tener que preocuparte por las particularidades del sistema sobre el cual se ejecute. Para empezar a programar en.NET solo tienes que elegir un lenguaje, un entorno de desarrollo y el tipo de aplicación que quieres escribir. De lo demás se encargará la plataforma. Si este video les gustó, dejenme un like así ayuden al algoritmo de YouTube a que se lo muestre a más personas. Suscríbanse al canal si todavía no lo han hecho. Se vienen muchísimos más contenidos de.NET y también de muchas otras tecnologías. y déjenme en la caja de comentarios si este video les sirvió, si respondió sus preguntas y cualquier otra cosa que quieran ver de aquí en adelante. Muchísimas gracias y nos vemos la próxima.