C#

El lenguaje de programación multipropósito del futuro

¿Qué es C#?

C# (pronunciado "C Sharp") es un lenguaje de programación moderno, orientado a objetos y con seguridad de tipos desarrollado por Microsoft. Combina la potencia de C++ con la simplicidad de Visual Basic y forma parte integral de la plataforma .NET.

// Ejemplo básico en C#
using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("¡Hola, Mundo Futurista!");
    }
}

Características Principales

Orientado a Objetos

C# es completamente orientado a objetos, con soporte para encapsulación, herencia y polimorfismo.

Tipado Seguro

El sistema de tipos de C# ayuda a prevenir errores comunes y mejora la calidad del código.

Moderno y en Evolución

C# sigue evolucionando con características modernas como patrones de coincidencia, registros y más.

Multiplataforma

Con .NET Core, C# ahora es verdaderamente multiplataforma (Windows, Linux, macOS).

Rico Ecosistema

Acceso a miles de librerías a través de NuGet y soporte para múltiples paradigmas de programación.

Alto Rendimiento

C# ofrece rendimiento cercano a C++ con características modernas de productividad.

¿Para qué se usa C#?

C# es un lenguaje extremadamente versátil que se utiliza en una amplia gama de aplicaciones:

Aplicaciones de Escritorio

Con Windows Forms, WPF y ahora MAUI para crear aplicaciones nativas para Windows.

Desarrollo Web

ASP.NET Core permite crear aplicaciones web modernas, APIs y servicios backend.

Videojuegos

Unity, uno de los motores de juegos más populares, usa C# como lenguaje principal.

Aplicaciones Móviles

Con Xamarin (ahora parte de MAUI) para desarrollar apps iOS y Android.

Inteligencia Artificial

ML.NET permite implementar machine learning en aplicaciones .NET.

IoT y Cloud

Azure IoT Hub y otras tecnologías cloud de Microsoft se integran perfectamente con C#.

El Futuro de C#

C# continúa evolucionando con cada versión, agregando características modernas que lo mantienen relevante:

// Ejemplo con características modernas de C#
using System;

// Registros (C# 9)
public record Person(string FirstName, string LastName);

// Patrones de coincidencia mejorados (C# 8+)
public static string CheckNumber(int number) => number switch
{
    > 0 => "Positivo",
    < 0 => "Negativo",
    _ => "Cero"
};

// Expresiones switch (C# 8)
var result = number switch
{
    1 => "Uno",
    2 => "Dos",
    _ => "Otro número"
};