Saltar al contenido

Aventour Backend API

Proyectos
(03/11) Backend • Clean Architecture

Descripción & Contexto

Backend de turismo en .NET 9 con arquitectura hexagonal, JWT y PostgreSQL. Fue un proyecto grupal y yo me encargué de todo el lado del servidor: arquitectura, autenticación, base de datos y lógica.

En este proyecto grupal de turismo me tocó liderar el backend. Yo armé la arquitectura del servidor, la base de datos, el login con JWT y toda la lógica de reservas e itinerarios, con la idea de dejar un sistema ordenado y fácil de escalar.

Aventour Backend API

Características Clave

  • Arquitectura Desacoplada

    Separación estricta de responsabilidades bajo el enfoque hexagonal (Puertos y Adaptadores).

  • Autenticación Segura (JWT)

    Generación y validación de tokens JSON Web Tokens firmados criptográficamente para la protección de endpoints.

  • Persistencia Modular

    Acceso a base de datos relacional PostgreSQL modelada y gestionada a través de migraciones automatizadas.

  • Gestión Turística

    Endpoints optimizados para la reserva de paquetes, coordinación de itinerarios grupales y consulta de actividades en tiempo real.

Arquitectura del Sistema

Organicé el backend siguiendo estrictamente la Arquitectura Hexagonal (Puertos y Adaptadores / Clean Architecture) en .NET 9: * Aventour.Domain: El núcleo del negocio, completamente desacoplado de dependencias externas. Contiene entidades ricas de dominio, Value Objects y contratos de reglas de negocio. * Aventour.Application: Orquestación de casos de uso (CQRS simplificado), validaciones con FluentValidation, DTOs y definición de interfaces de puertos primarios y secundarios. * Aventour.Infrastructure: Implementación concreta de adaptadores: acceso a PostgreSQL mediante Entity Framework Core, repositorios genéricos y específicos, generación de tokens criptográficos JWT y migraciones Code-First. * Aventour.WebAPI: Punto de entrada HTTP RESTful, middlewares de manejo global de excepciones, inyección de dependencias modular y documentación interactiva con Swagger OpenAPI.

Retos Técnicos & Soluciones

* Aislamiento Estricto del Dominio: Evitar que los modelos de persistencia de EF Core contaminen las entidades de negocio puras, lográndolo mediante el patrón Repository y mappers dedicados. * Consistencia y Concurrencia en Reservas: Garantizar la atomicidad en la reserva simultánea de paquetes turísticos mediante transacciones y validaciones a nivel de capa de aplicación.

Stack Tecnológico

  • .NET 9
  • PostgreSQL
  • EF Core
  • JWT

Ficha Técnica

Rol
Arquitectura, Diseño y Desarrollo
Tipo
Backend • Clean Architecture
Impacto & Resultados
* Arquitectura 100% testeable con pruebas unitarias aisladas en dominio y aplicación. * Capacidad de procesamiento concurrente superior a 500 req/s con tiempos de respuesta en endpoints CRUD inferiores a 35 ms. * Facilidad total para intercambiar o escalar la base de datos sin alterar las reglas de negocio.
Aprendizajes
Aventour consolidó mi dominio de la Arquitectura Hexagonal en .NET, demostrando que una separación rigurosa de responsabilidades ahorra tiempo de depuración y hace que el backend sea verdaderamente escalable y profesional. <div