Ir al contenido principal

Arquitectura Limpia explicado con patitos 🐤

 Arquitectura Limpia explicada con patitos 



🐤🐤🐤


Anteriormente te expliqué sobre la arquitectura N capas, pero si aún no te queda del todo claro, este post va a resumir de manera perfecta y muy simple como funciona esta arquitectura. ¡Ademas! he incluido un ejemplo con codigo de manera narrativa para que quede totalmente claro. 


Recordemos sus capas y el flujo: 
  1. Repository (Repositorio):
    Es el que "habla" directamente con la base de datos
    Si necesitas SELECT, INSERT, UPDATE, DELETE -> el repositorio lo hace
    Su interfaz (IRepository) es como un "menú" que dice "estos son los métodos que puedes usar para la base de datos"

  2. Service (Servicio):
    Es el "cerebro" que tiene toda la lógica del negocio
    Usa el repositorio cuando necesita datos
    Su interfaz (IService) es como un "menú" para el controlador: "estas son las operaciones que puedes hacer".
    Puede usar varios repositorios si necesita combinar datos

  3. Model (Modelo):
    Es simplemente la estructura de los datos
    Define cómo se ven tus datos (qué propiedades tienen)
    Es usado por todas las capas

  4. Controller (Controlador):
    Recibe las peticiones HTTP (GET, POST, etc.)
    Usa el servicio para hacer el trabajo
    No sabe nada de la base de datos, solo le dice al servicio "necesito esto"

Ejemplo con código patito en .Net Core y explicativo a modo de narracion, donde flujo es el siguiente: 
  1. Cliente pide: "dame el producto 5"
  2. Controlador dice: "ok, le pido al servicio"
  3. Servicio piensa: "necesito pedirle esto al repositorio"
  4. Repositorio va a la BD y trae los datos
  5. Servicio convierte esos datos a DTO
  6. Controlador devuelve el DTO al cliente

arquitectura limpia n-capas

arquitectura limpia n-capas

arquitectura limpia n-capas

arquitectura limpia n-capas

arquitectura limpia n-capas

arquitectura limpia n-capas

arquitectura limpia n-capas

Y por último, pero no menos importante la inyección de dependencias 

arquitectura limpia n-capas











Comentarios

Entradas más populares de este blog

Arquitectura N-Capas GUÍA COMPLETA .NET Core

Entendiendo la Arquitectura Limpia (Clean Architecture) en .NET: Una Guía Completa La Arquitectura Limpia, también conocida como arquitectura N-Capas, es un patrón de diseño que nos ayuda a crear aplicaciones mantenibles, testables y escalables. En este artículo, exploraremos en detalle cómo implementar esta arquitectura en un proyecto .NET. Si quieres entenderlo más fácil y con código, te dejo este otro artículo:   Arquitectura Limpia explicado con patitos 🐤 ¿Qué es la Arquitectura Limpia? La Arquitectura Limpia es un conjunto de principios de diseño que nos ayuda a separar las responsabilidades en diferentes capas de nuestra aplicación. Cada capa tiene una responsabilidad específica y se comunica con las otras capas a través de interfaces bien definidas. Estructura del Proyecto Una típica estructura de proyecto en Arquitectura Limpia se ve así: ├── Controllers/ │   └── ProductController.cs ├── Domain/ │   ├── Models/ │   └── DTOs/ ├── Repository/ │...

Archivo Application.properties en SPRING BOOT

  Guía Completa: Application.properties en Spring Boot El archivo application.properties es una pieza fundamental en aplicaciones Spring Boot, actuando como el centro de configuración para todo tu proyecto. En esta guía, exploraremos sus características principales y cómo aprovecharlo al máximo. ¿Qué es application.properties? Es un archivo de configuración que permite definir diferentes parámetros y valores para tu aplicación Spring Boot sin necesidad de modificar el código fuente. Se ubica en src/main/resources y Spring Boot lo lee automáticamente al iniciar. Configuraciones Esenciales Configuración del Servidor # Puerto del servidor server.port = 8080 # Contexto de la aplicación server.servlet.context-path = /miapp Conexión a Base de Datos # MySQL spring.datasource.url = jdbc:mysql://localhost:3306/mibasededatos spring.datasource.username = usuario spring.datasource.password = contraseña spring.datasource.driver-class-name = com.mysql.cj.jdbc.Driver JPA y Hibernat...

Kubernets (K8S) - PRIMEROS pasos

¡Hola, amantes de la tecnología! 👋 Si has escuchado hablar de Kubernetes pero aún no sabes por dónde empezar, este artículo es para ti. 🚢 Kubernetes, también conocido como K8s, es una herramienta poderosa para la gestión de contenedores que puede parecer intimidante al principio. Pero no te preocupes, aquí te guiaremos paso a paso para que puedas dominar los conceptos básicos y empezar a desplegar tus propias aplicaciones en un clúster de Kubernetes. 🌐 Prepárate para descubrir cómo esta tecnología puede transformar la manera en que desarrollas y despliegas tus aplicaciones. ¡Vamos a sumergirnos en el mundo de Kubernetes! 💻🚀 Vamos hacer un listado para lo que vamos a necesitar instalar:  Docker Desktop  Install Docker Desktop on Windows | Docker Docs   Kubectl  Install Tools | Kubernetes   MiniCube  https://minikube.sigs.k8s.io/docs/start Scoop ( opcional para instalar Kubecolor)  Scoop   Kubecolor ( opcional para colores en PowerShell)  ...