Lección 1 · ~8 min
Hola Mundo en C#
Escribe tu primera línea de C#, entiende qué hace y descubre por qué en el código real encontrarás dos formas distintas de programa C#.
El programa mínimo útil
Desde C# 9 (.NET 5+), un programa puede ser simplemente instrucciones al principio del archivo — sin clase, sin Main. Es lo que te da hoy dotnet new console:
Console.WriteLine("¡Hola, mundo!");
Console.WriteLine imprime su argumento y pasa a la línea siguiente. Console.Write imprime sin el salto de línea — ejecuta esto y verás las dos llamadas en la misma línea:
Console.Write("C# en");
Console.WriteLine("una línea");
Comentarios
Dos estilos, igual que en C++ y Java. Los comentarios son para el siguiente lector (a menudo tú, tres semanas después):
// Comentario de una línea — todo lo que sigue a // se ignora.
/* Un comentario de bloque
puede ocupar varias líneas. */
Console.WriteLine("los comentarios se ignoran"); // esto también
La plantilla clásica: class Program + Main
Tutoriales antiguos, libros de texto y mucho código de producción usan la forma clásica. No está obsoleta — la verás en la mayoría de los trabajos. Ambas formas dicen lo mismo: encuentra el punto de entrada, ejecútalo.
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("¡Hola desde Main!");
}
}
Pieza a pieza:
using System;— importa el espacio de nombres estándar para que escribasConsoleen vez deSystem.Console. (El motor del navegador te deja omitirlo.)class Program— un contenedor con nombre para tu código. C# es totalmente orientado a objetos: todo el código vive en tipos.static void Main(string[] args)— el punto de entrada.staticsignifica que corre sin crear un objeto;voidque no devuelve nada;argsguarda los argumentos de la línea de comandos.
Tu primera entrada
Los programas se vuelven interesantes cuando reaccionan. Console.ReadLine() lee una línea de texto — escribe en la caja de entrada bajo el código antes de ejecutar:
Console.Write("¿Cómo te llamas? ");
string nombre = Console.ReadLine();
Console.WriteLine($"¡Hola, {nombre}!");
Dos ideas nuevas en tres líneas:
string nombre = Console.ReadLine();— declara una variable de tipostringy guarda la entrada en ella.$"¡Hola, {nombre}!"— un string interpolado: todo lo que va dentro de{…}es una expresión, se evalúa y se inserta. Es la forma idiomática de construir texto en C# moderno.
Practica ahora
Abre el playground y cambia el programa para imprimir dos líneas: tu nombre y luego tu número favorito. Cuando te sientas cómodo, el siguiente paso natural es el primer problema con corrección: Suma de dos números.