Programación

Introducción a las Bases del Lenguaje C# y Ejemplos Prácticos con .NET 7 utilizando Service Layer y Capas en la Arquitectura

Testing y QA | 30/03/2025 | 17 vistas
Juandreedit
Juandreedit Autor
Introducción a las Bases del Lenguaje C# y Ejemplos Prácticos con .NET 7 utilizando Service Layer y Capas en la Arquitectura

Introducción a las Bases del Lenguaje C# y Ejemplos Prácticos con .NET 7 utilizando Service Layer y Capas en la Arquitectura

Programación - Testing y QA

Escuchar este contenido

.NET 7

El lenguaje de programación C# es una poderosa herramienta desarrollada por Microsoft, diseñada específicamente para la plataforma .NET. C# combina la eficiencia de la programación orientada a objetos con la versatilidad de la programación moderna, lo que lo convierte en una elección popular para el desarrollo de aplicaciones empresariales y de escritorio.

Con la llegada de .NET 7, se introdujeron nuevas características y mejoras, lo que amplió aún más las posibilidades de desarrollo. En este artículo, exploraremos algunas de las bases fundamentales de C# y proporcionaremos ejemplos prácticos utilizando la arquitectura de Service Layer con capas de API, presentación, servicios, y las interfaces IService, Service, y DbContext.

Bases del Lenguaje C#

1. Tipos de Datos y Variables:

csharp
// Números enteros
int edad = 25;
uint cantidad = 1000; // Número entero sin signo

// Números de punto flotante
float salario = 55000.50f;
double altura = 1.85;
decimal precio = 99.99m; // Decimal, útil para valores monetarios

// Caracteres y cadenas de texto
char inicial = 'J';
string nombre = "Juan";

// Booleanos
bool esMayorDeEdad = true;
bool tieneDescuento = false;

// Fechas y horas
DateTime fechaActual = DateTime.Now;
TimeSpan duracion = TimeSpan.FromHours(2);

// Tipos especiales
byte byteValue = 255; // Números enteros de 8 bits
short shortValue = 32000; // Números enteros de 16 bits
long longValue = 1234567890123456789L; // Números enteros de 64 bits

// Otros tipos
object objetoGenerico = new object(); // Tipo de datos genérico
dynamic variableDinamica = "Hola, soy dinámica"; // Tipo dinámico

2. Estructuras de Control:

csharp
if (edad >= 18)
{
    Console.WriteLine("Eres mayor de edad");
}
else
{
    Console.WriteLine("Eres menor de edad");
}

int opcion = 2;

switch (opcion)
{
    case 1:
        Console.WriteLine("Opción 1 seleccionada");
        break;
    case 2:
        Console.WriteLine("Opción 2 seleccionada");
        break;
    default:
        Console.WriteLine("Opción no reconocida");
        break;
}

int contador = 0;

while (contador < 5)
{
    Console.WriteLine($"Iteración {contador}");
    contador++;
}

for (int i = 0; i < 5; i++)
{
    Console.WriteLine($"Iteración {i}");
}

List<int> numeros = new List<int> { 1, 2, 3, 4, 5 };

foreach (var numero in numeros)
{
    Console.WriteLine(numero);
}

Consultas con LinQ

csharp
List<int> numeros = new List<int> { 1, 2, 3, 4, 5 };

var suma = numeros.Sum();
var promedio = numeros.Average();
var mayoresQueTres = numeros.Where(num => num > 3);

Console.WriteLine($"Suma: {suma}, Promedio: {promedio}");

foreach (var numero in mayoresQueTres)
{
    Console.WriteLine(numero);
}

3. Programación Orientada a Objetos (POO):

csharp
public class Persona
{
    public string Nombre { get; set; }
    public int Edad { get; set; }
}

4. Metodos y Funciones

csharp
public void Saludar()
{
    Console.WriteLine("¡Hola!");
}

Ejemplos Prácticos con .NET 7 y Service Layer

csharp
{
“ConnectionStrings”: {
“DefaultConnection”: “Server=myserver;Database=mydatabase;User=myuser;Password=mypassword;”
},
“Logging”: {
“LogLevel”: {
“Default”: “Information”,
“Microsoft”: “Warning”,
“System”: “Error”
}
},
“AllowedHosts”: “*”
}

Conclusión:

En resumen, la combinación de las sólidas bases del lenguaje C# con las nuevas funcionalidades introducidas en .NET 7, junto con la implementación de Service Layer y la estructura de capas, proporciona un marco de desarrollo poderoso y flexible. C# sigue siendo una elección confiable para el desarrollo de aplicaciones empresariales y de escritorio debido a su sintaxis intuitiva, programación orientada a objetos y amplia variedad de tipos de datos.


La adopción de la arquitectura en capas, con la definición clara de interfaces como `IService` y la implementación eficiente en la capa de servicios, brinda beneficios tangibles. La modularidad y la separación de responsabilidades facilitan el mantenimiento y la evolución del código, mientras que la capacidad de escalar cada capa de manera independiente permite una adaptación ágil a las necesidades cambiantes del negocio.


En conclusión, el enfoque estructurado de C# con .NET 7, combinado con Service Layer y la arquitectura en capas, establece las bases para el desarrollo de aplicaciones sólidas y escalables. Este paradigma no solo mejora la eficiencia del desarrollo, sino que también sienta las bases para la construcción de sistemas que pueden evolucionar con facilidad y mantenerse robustos a medida que las exigencias del entorno empresarial evolucionan.