d48cda4081
CI / Test (ubuntu-latest, Node 18.x, bun) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, npm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, pnpm) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 18.x, yarn) (push) Failing after 15m1s
CI / Test (ubuntu-latest, Node 20.x, bun) (push) Failing after 17m13s
CI / Test (ubuntu-latest, Node 20.x, npm) (push) Failing after 18m42s
CI / Test (ubuntu-latest, Node 20.x, pnpm) (push) Failing after 15m0s
CI / Test (ubuntu-latest, Node 20.x, yarn) (push) Failing after 49m44s
CI / Test (ubuntu-latest, Node 22.x, bun) (push) Failing after 51m55s
CI / Test (ubuntu-latest, Node 22.x, pnpm) (push) Failing after 21m57s
CI / Test (ubuntu-latest, Node 22.x, npm) (push) Failing after 37m39s
CI / Test (ubuntu-latest, Node 22.x, yarn) (push) Failing after 34m7s
CI / Validate Components (push) Failing after 37m15s
CI / Python Tests (push) Failing after 10m1s
CI / Security Scan (push) Failing after 10m1s
CI / Lint (push) Failing after 17m12s
CI / Coverage (push) Failing after 20m19s
CI / Test (macos-latest, Node 18.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 18.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 20.x, yarn) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, bun) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (macos-latest, Node 22.x, yarn) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, npm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, pnpm) (push) Has been cancelled
CI / Test (windows-latest, Node 22.x, yarn) (push) Has been cancelled
32 lines
1.2 KiB
Markdown
32 lines
1.2 KiB
Markdown
# Patrones Comunes
|
|
|
|
## Proyectos Esqueleto
|
|
|
|
Al implementar nueva funcionalidad:
|
|
1. Buscar proyectos esqueleto probados en batalla
|
|
2. Usar agentes paralelos para evaluar opciones:
|
|
- Evaluación de seguridad
|
|
- Análisis de extensibilidad
|
|
- Puntuación de relevancia
|
|
- Planificación de implementación
|
|
3. Clonar la mejor coincidencia como fundación
|
|
4. Iterar dentro de la estructura probada
|
|
|
|
## Patrones de Diseño
|
|
|
|
### Patrón Repository
|
|
|
|
Encapsular el acceso a datos detrás de una interfaz consistente:
|
|
- Definir operaciones estándar: findAll, findById, create, update, delete
|
|
- Las implementaciones concretas manejan los detalles de almacenamiento (base de datos, API, archivo, etc.)
|
|
- La lógica de negocio depende de la interfaz abstracta, no del mecanismo de almacenamiento
|
|
- Permite cambiar fácilmente las fuentes de datos y simplifica las pruebas con mocks
|
|
|
|
### Formato de Respuesta de API
|
|
|
|
Usar un envelope consistente para todas las respuestas de API:
|
|
- Incluir un indicador de éxito/estado
|
|
- Incluir el payload de datos (nullable en error)
|
|
- Incluir un campo de mensaje de error (nullable en éxito)
|
|
- Incluir metadatos para respuestas paginadas (total, page, limit)
|