Prioridades Técnicas¶
Simple & DRY y Single Responsibility Principle¶
- Simple: ver KISS y YAGNI en Valores técnicos.
- DRY — Don't Repeat Yourself. En nuestras soluciones no hay lugar para el copy & paste. Es una deuda técnica que eventualmente te perseguirá y te traerá problemas en el futuro. No lo hagas.
- Single Responsibility Principle: las unidades de software hacen una sola cosa y la hacen bien. Esto aplica a líneas de código, funciones, clases, vistas, módulos, servicios, sistemas y aplicaciones.
Transparent & Manageable¶
Logs, analíticas, reporte de errores, separación de la configuración del código, feature flags y ajustes en tiempo real del software son necesarios y obligatorios en nuestras soluciones.
Al seguir estas dos prioridades técnicas obtenemos dos propiedades emergentes en nuestras soluciones: robustez y escalabilidad.
Lista completa de prioridades técnicas¶
En orden:
- Simple & DRY y Single Responsibility Principle.
- Transparent & Manageable.
- Secure (Seguro).
- Consistent (Consistente).
- Documented (Documentado).
- Tested (Probado).
Nuestros desarrolladores son responsables de velar por el cumplimiento de estas prioridades técnicas. Las revisiones de código (code reviews) las estructuramos con base en ellas.
Vivir estas prioridades requiere pensar profundamente en los problemas que enfrentamos en el día a día. Un código que simplemente funciona no es nuestra meta. Nuestra meta real es un código que funciona y además incorpora estas prioridades, tomando en cuenta los pros y contras de cada enfoque.