tipos-de-aplicaciones-en-dotnet

Tipos de aplicaciones en .NET

Dentro de .NET se engloban una amplia gama de tecnologías que cubren casi cualquier tipo de aplicación y necesidad de desarrollo que podamos encontrar.

Puedes ser un poco confuso por la gran cantidad de nombres de tecnologías que hay. Entre las tecnologías disponibles y tipos de proyectos encontramos, por ejemplo, aplicaciones de escritorio, móviles, web, juegos y aplicaciones de consola.

Pero no os asustéis, simplemente hay que saber que son tecnologías que se engloban dentro de entorno .NET, para sirven para hacer distintos tipos de aplicaciones.

Elegir la tecnología adecuada depende de los requisitos de la aplicación y el entorno de ejecución. Aquí os dejo una tabla de resumen.

Tipo de AplicaciónTecnología .NETPlataforma
ConsolaConsole AppMultiplataforma
EscritorioWinFormsWindows
WPFWindows
UWPWindows
WebASP.NET CoreMultiplataforma
BlazorMultiplataforma
MóvilesXamarinWindows, Android, iOS
MAUIMultiplataforma
JuegosUnityMultiplataforma
GodotMultiplataforma
Internet de las Cosas (IoT).NET for IoTDispositivos IoT

❌ significa obsoleto

Así que vamos a ver cada una de ellas un poquito más en profundidad 👇.

Aplicaciones de consola

Las aplicaciones de consola son aplicaciones basadas en texto que se ejecutan en una ventana de línea de comandos (CMD en Windows o Terminal en macOS/Linux).

Son la opción más sencilla y básica de desarrollo en .NET, y son ampliamente utilizadas para probar funciones de lógica sin interfaz gráfica o para automatización.

Cuándo usarlo

Las aplicaciones de consola son apropiadas para scripts de automatización, pruebas de funcionalidades, aplicaciones de línea de comandos que no requieren GUI.

Aplicaciones de escritorio

WinForms

WinForms (Windows Forms) es una tecnología para desarrollar aplicaciones de escritorio en Windows con una interfaz gráfica (GUI) sencilla.

Lanzada en el .NET Framework original, WinForms permite diseñar formularios y componentes gráficos arrastrando y soltando elementos.

Obsoleto

Fue sustituido por WPF

WPF

WPF (Windows Presentation Foundation) es una tecnología más avanzada que WinForms, también exclusiva para Windows, pero que ofrece mejor soporte para interfaces gráficas complejas y ricas en contenido visual.

Utiliza XAML (Extensible Application Markup Language) para definir interfaces y permite una mayor personalización y animaciones.

Cuándo usarlo

Es la tecnología actual recomendada por Microsoft para aplicaciones Desktop en Windows.

UWP

UWP (Universal Windows Platform) es una plataforma que permite crear aplicaciones universales que funcionan en múltiples dispositivos Windows, incluidos PC, tabletas, Xbox y HoloLens.

Las aplicaciones UWP están optimizadas para Windows 10 o posterior, y se pueden publicar en la Microsoft Store. También se desarrollan con XAML (con variaciones muy pequeñas respecto a WPF).

Obsoleto

Venía a sustituir a WPF, pero no terminó de triunfar. Actualmente está en desuso, y se recomienda WPF

Aplicaciones Web

ASP.NET

ASP.NET es una tecnología para crear aplicaciones web en .NET, que abarca desde simples páginas HTML hasta aplicaciones web complejas y robustas.

Obsoleto

Fue sustituido por ASP.NET Core

ASP.NET Core

ASP.NET Core es la evolución de ASP.NET, diseñada para ser multiplataforma, de alto rendimiento y compatible con la nube.

Cuándo usarlo

ASP.NET Core es la opción recomendada para aplicaciones web modernas y multiplataforma.

Blazor

Blazor es una tecnología reciente que permite desarrollar aplicaciones web interactivas utilizando C# en lugar de JavaScript. Blazor tiene dos modalidades:

  • Blazor WebAssembly: Ejecuta código C# en el navegador.
  • Blazor Server: Ejecuta el código en el servidor, y el navegador interactúa con él a través de SignalR.

Cuándo usarlo

Útil para desarrolladores de C# que quieren trabajar en aplicaciones web sin depender de JavaScript.

Aplicaciones Móviles

Xamarin

Xamarin es una plataforma que permite desarrollar aplicaciones móviles multiplataforma utilizando C# y .NET. Las aplicaciones creadas con Xamarin pueden ejecutarse en iOS, Android y Windows.

Obsoleto

Fue sustituido por MAUI

.NET MAUI

MAUI (Multi-platform App UI) es la evolución de Xamarin Forms, que permite desarrollar aplicaciones de escritorio y móviles desde una única base de código. Al igual que Xamarin, soporta iOS, Android, macOS y Windows.

Aplicaciones multiplataforma que deben ejecutarse en dispositivos móviles y en aplicaciones de escritorio, ofreciendo una experiencia más unificada que Xamarin.

Aplicaciones de juegos

Unity

Unity es un motor de desarrollo de videojuegos muy popular que utiliza C# como su principal lenguaje de programación. Unity permite desarrollar juegos en 2D y 3D y publicarlos en múltiples plataformas, incluyendo consolas, PC, dispositivos móviles y realidad virtual.

Cuándo usarlo

Unity es útil para desarrolladores interesados en crear videojuegos o experiencias de realidad aumentada y realidad virtual, usando un lenguaje de alto nivel como C#.

Godot

Godot es un motor de desarrollo de videojuegos multiplataforma y de código abierto que permite crear juegos en 2D y 3D.

Una de sus ventajas es su flexibilidad en los lenguajes de programación, ya que además de su lenguaje nativo GDScript, soporta C#.

Cuándo usarlo

Es la una opción atractiva para desarrollar videojuegos con C#, con una solución Open Source

Otras tecnologías