.NET: Introducción y Características

Jun 2, 2024

Introducción a .NET

¿Qué es .NET?

  • Plataforma de desarrollo
  • Conjunto de lenguajes, librerías y herramientas
  • Ecosistema de desarrollo
  • Gratis y de código abierto
  • Permite crear todo tipo de aplicaciones:
    • Aplicaciones web
    • Aplicaciones móviles
    • Machine Learning
    • Desarrollo de videojuegos
    • Aplicaciones de escritorio
    • Aplicaciones en la nube

Lenguajes de Programación Soportados

  1. Visual Basic.NET
    • Evolución del antiguo Visual Basic
    • Amigable, fuertemente tipado y orientado a objetos
    • Lanzado en 2002
  2. C Sharp (C#)
    • Más popular
    • Simple, moderno, orientado a objetos y también soporta programación funcional
    • Fuertemente tipado
    • Muy utilizado en el entorno corporativo
  3. F Sharp (F#)
    • Multiparadigma: programación funcional, orientada a objetos e imperativa
    • Fuertemente tipado

Implementaciones de .NET

  1. .NET Framework
    • Primera versión, lanzada en 2002
    • Exclusivamente para Windows
    • Última versión: 4.8
  2. .NET Core
    • Multiplataforma
    • Puede ejecutarse en cualquier sistema operativo
    • Gran ecosistema de librerías
    • Se espera que sea la implementación definitiva
  3. Xamarin/Mono
    • Para desarrollar aplicaciones en sistemas operativos móviles

Elección de Implementaciones

  • La elección se basa en la necesidad de compatibilidad con el sistema operativo.
  • .NET Core es la recomendada para aplicaciones no móviles
  • .NET Framework sigue siendo mantenido por Microsoft
  • Interoperabilidad entre .NET Framework y .NET Core posible gracias a .NET Standard

Arquitectura de una Aplicación .NET

  • Código escrito en C#, F# o Visual Basic.NET
  • Compilado al CIL (Common Intermediate Language)
  • Código almacenado en assemblies (.dll o .exe)
  • CLR (Common Language Runtime) convierte assemblies en código de máquina mediante JIT (Just-In-Time)

Entornos de Desarrollo

  1. Visual Studio
    • Entorno por defecto
    • Poderoso y con muchas herramientas
    • Edición Community gratis
  2. Visual Studio Code
    • Versátil, no solo para lenguajes .NET
    • Desarrollado en TypeScript
  3. Visual Studio para Mac
    • Compatible con macOS
  4. CLI (Command Line Interface)
    • Para quienes prefieren la línea de comandos
  5. OmniSharp
    • Bibliotecas para usar editores como Atom, Sublime Text o Vim

Conclusión

  • .NET facilita la vida del desarrollador
  • Fácil de empezar, configuración inicial mínima
  • Escoge un lenguaje, un entorno y el tipo de aplicación para comenzar.