SOOL CL1 Checklist de código - Solify-IT/psyche-ing GitHub Wiki
- Arquitectura:
- Se cumple con la regla de dependencias por capas establecidas en el manual de arquitectura.
- Patrones de diseño son utilizados apropiadamente.
- Casos especiales y límites:
- El programa está protegido de overflows, underflows, y condiciones fuera de límites.
- Todos los "edge cases" o casos especiales son atendidos.
- Todas las condiciones "imposibles" son absolutamente imposibles.
- Uso funcional:
- Todos los endpoints están documentados en código o en algún documento.
- Todas las implementaciones de abstracciones o interfaces están definidas.
- Seguridad:
- Todas las rutas privadas requieren autenticación.
- El programa no revela información confidencial.
- Llaves secretas son guardadas en variables de entorno y no en código.
- Nombres:
- Ningún nombre de variables, objetos, funciones, son una sola letra. Todos los nombres son claros y se explican solos.
- El default export debe tener el mismo nombre del archivo en el que se encuentra escrito.
- Estándares de código:
- Todo el código debe estar en inglés con la única excepción de cadenas o información que sea visible por el socio formador.
- Se sigue el estándar AirBnB y no existen errores de compilación por ESLint.
- Todo los archivos son de tipo TypeScript para mantener consistencia.
- Manejo de errores:
- Cuando se llama una función asíncrona, siempre manejar un posible error.
- El backend regresa errores descriptivos y únicos.
- El frontend maneja y regresa retroalimentación al recibir errores de backend.
- Estilo:
- El frontend reutiliza componentes ya existentes con el mismo fin para cumplir con DRY.
- Los estilos son extendidos de un estilo base/padre y se ajustan localmente en la vista si es necesario.
- Se sigue la guía de estilo.
- El frontend muestra retroalimentacion de que se están cargando o subiendo datos durante una llamada asíncrona.
- Ortografía:
- No existen errores ortográficos o gramaticales en las partes visibles por el socio formador.
- Testing:
- Las pruebas de regresión pasan correctamente.
- Se tiene una cobertura de por lo menos 80% del código de la user story en pruebas automatizadas.