← C# EspañolChapter 01 of 13

Introducción a C\#

## Objetivos de Aprendizaje - Comprender la historia de C# y el framework .NET - Configurar el entorno de desarrollo de Visual Studio - Escribir y ejecutar tu primer programa en C# - Comprender los fundamentos de la sintaxis de C# ## ¿Qué es C#? C# (pronunciado "C sharp") es un lenguaje de programación moderno, orientado a objetos desarrollado por Microsoft como parte de su iniciativa .NET. ```csharp using System; class HelloWorld { static void Main() { Console.WriteLine("Hello, World!"); } } ``` ## El Framework .NET ### Componentes Clave | Componente | Descripción | |------------|-------------| | CLR | Common Language Runtime - ejecuta código C# | | FCL | Framework Class Library - clases preconstruidas | | JIT | Compilador Just-In-Time - compila IL a código nativo | ### Cómo Funciona .NET ```text Código Fuente C# ↓ Compilador ↓ IL (Intermediate Language) / MSIL ↓ Compilador JIT ↓ Código Nativo de Máquina ``` ### Características Clave - **Seguridad de Tipos** - Sistema de tipado fuerte - **Orientado a Objetos** - Todo excepto los primitivos es un objeto - **Gestión Automática de Memoria** - Recolección de basura - **Orientado a Componentes** - Construido para software reutilizable - **Sintaxis Moderna** - Código limpio y legible ## Instalando Visual Studio ### Descarga Obtén Visual Studio de ### Ediciones - **Community** - Gratis para desarrolladores individuales - **Professional** - Para desarrolladores profesionales - **Enterprise** - Para equipos grandes ### Cargas de Trabajo Al instalar, selecciona: - **Desarrollo de escritorio .NET** - **Desarrollo web ASP.NET** ## Tu Primer Programa ### Archivo: HelloWorld.cs ```csharp using System; class HelloWorld { static void Main() { Console.WriteLine("Hello, World!"); } } ``` ### Compilar y Ejecutar ```bash dotnet new console -o HelloWorld cd HelloWorld dotnet run ``` ## Estructura de un Programa en C\# ```csharp using System; // Directivas using namespace MyApp // Namespace (opcional) { class Program // Declaración de clase { static void Main() // Método Main - punto de entrada { // Las sentencias van aquí } } } ``` ### Componentes 1. **Directivas using** - Importan namespaces 2. **Namespace** - Organiza el código lógicamente 3. **Clase** - Plantilla para crear objetos 4. **Método Main** - Punto de entrada del programa ## Declaraciones de Nivel Superior (C# 9+) C# moderno permite una estructura de programa simplificada: ```csharp // Program.cs Console.WriteLine("Hello, World!"); ``` El compilador genera la clase y el método Main automáticamente. ## Comentarios ```csharp // Comentario de una línea /* * Comentario de múltiples líneas */ /// /// Comentario de documentación XML /// ``` ## El Método Main ### Sintaxis Tradicional ```csharp static void Main() { // Código aquí } static void Main(string[] args) { foreach (string arg in args) { Console.WriteLine(arg); } } ``` ## Salida por Consola ```csharp // Imprimir con nueva línea Console.WriteLine("Hello"); // Imprimir sin nueva línea Console.Write("Hello "); Console.Write("World"); // Interpolación de cadenas (C# 6+) string name = "Alice"; int age = 30; Console.WriteLine($"Name: {name}, Age: {age}"); // Salida formateada Console.WriteLine("Name: {0}, Age: {1}", name, age); ``` ## Argumentos de Línea de Comandos ### Hello.cs ```csharp using System; class Hello { static void Main(string[] args) { if (args.Length > 0) { Console.WriteLine("Hello, " + args[0]); } else { Console.WriteLine("Hello, World!"); } } } ``` ```bash dotnet run -- Alice # Salida: Hello, Alice ``` ## IDEs ### IDEs Populares - **Visual Studio** (recomendado para Windows) - **Visual Studio Code** (multiplataforma) - **JetBrains Rider** (multiplataforma) - **Editores en Línea** (para pruebas rápidas) ### Extensiones de VS Code - C# para Visual Studio Code - Herramienta de Instalación de .NET ## Versiones de C\# | Versión | Año | Características Clave | |---------|-----|----------------------| | C# 1.0 | 2002 | Primera versión | | C# 2.0 | 2005 | Genéricos, tipos anulables | | C# 3.0 | 2007 | LINQ, expresiones lambda | | C# 4.0 | 2010 | Enlace dinámico | | C# 5.0 | 2012 | async/await | | C# 6.0 | 2015 | Interpolación de cadenas, operador condicional nulo | | C# 9.0 | 2020 | Records, mejoras en pattern matching | | C# 10 | 2021 | Record structs, using global | | C# 11 | 2022 | Mejoras en pattern matching | | C# 12 | 2023 | Constructores primarios, alias | ## Verificar Tu Versión ```bash dotnet --version ``` ## Resumen - C# es un lenguaje OOP moderno de Microsoft - .NET proporciona CLR y FCL - El código se compila a IL, luego JIT compila a nativo - El punto de entrada es el método Main - Usa `dotnet new console` para crear un proyecto - `dotnet run` compila y ejecuta - Comentarios: `//`, `/* */`, `///`

Comments

Comments powered by Giscus

To enable comments, add your Giscus embed code here.

Learn more about Giscus →