Sobes.tech
Junior — Middle

Explique el concepto de arquitectura en capas dentro de una sola aplicación y sus componentes principales.

sobes.tech AI

Respuesta de la IA

La arquitectura en capas es una forma de organizar una aplicación en la que la funcionalidad se divide en varias capas lógicas, cada una responsable de su propia área de responsabilidad. Esto aumenta la modularidad, facilita el mantenimiento y las pruebas.

Componentes principales de la arquitectura en capas:

  1. Capa de Presentación — responsable de la interacción con el usuario, la visualización de datos y la recepción de entradas.
  2. Capa de Lógica de Negocio — contiene reglas y lógica para el procesamiento de datos, implementa procesos de negocio.
  3. Capa de Acceso a Datos — responsable de interactuar con la base de datos u otras fuentes de datos.

Ejemplo en C#:

// Capa de Presentación
public class UserInterface {
    private BusinessLogic _bl = new BusinessLogic();
    public void ShowUser(int id) {
        var user = _bl.GetUser(id);
        Console.WriteLine($"Usuario: {user.Name}");
    }
}

// Capa de Lógica de Negocio
public class BusinessLogic {
    private DataAccess _da = new DataAccess();
    public User GetUser(int id) {
        return _da.FetchUser(id);
    }
}

// Capa de Acceso a Datos
public class DataAccess {
    public User FetchUser(int id) {
        // Aquí el código para obtener el usuario de la base de datos
        return new User { Id = id, Name = "Ivan" };
    }
}

public class User {
    public int Id { get; set; }
    public string Name { get; set; }
}

Este separación simplifica el cambio de una capa sin afectar a las otras.