Saltar al contenido
Mis Proyectos
Caso de estudio 2026

JavaBank

Un banco para la terminal en Java 21 con cero dependencias externas: cuentas, depósitos, retiros, transferencias e historial de movimientos.

  • Java

El caso de estudio

Problema
Manejar dinero sin errores de redondeo y con reglas que no se puedan saltar, demostrando arquitectura limpia sin frameworks, base de datos ni librerías.
Solución
Solo Java 21 y su biblioteca estándar, con dependencias en una sola dirección; el dinero siempre en BigDecimal (un value object Money) y el saldo que solo cambia por un método que, en el mismo paso, registra el movimiento.
Resultado
Ejecutable con un run.sh que compila con javac, sin instalación; código pensado para leerse como de producción. Especialmente pertinente para fintech.

Proceso

Proceso de desarrollo

El razonamiento detrás de las decisiones técnicas: por qué se eligió cada tecnología, qué retos surgieron y cómo se resolvieron.

  1. 01

    Cero dependencias, a propósito

    Construí el banco solo con Java 21 y su biblioteca estándar, sin frameworks ni base de datos. La restricción es deliberada: obliga a que la arquitectura limpia se sostenga por sí sola, con las dependencias apuntando en una sola dirección, y demuestra los fundamentos sin que una librería haga el trabajo difícil.

  2. 02

    El dinero, bien modelado

    El dinero nunca se representa con float: siempre en BigDecimal, encapsulado en un value object Money que centraliza el redondeo. Es la decisión más importante del proyecto, porque un error de centavos en un banco no es un detalle.

  3. 03

    Invariantes imposibles de saltar

    El saldo solo cambia a través de un método que, en el mismo paso, registra el movimiento: es imposible mover dinero sin dejar rastro. Modelar la regla dentro del objeto —y no en el código que lo usa— es lo que hace que este ejercicio sea especialmente pertinente para fintech.

Repositorios

Commits

  1. Cambios en el Readme

    ceb5e4cEduardohace 3 semanas

  2. Initial commit

    307508cEduardohace 3 semanas