Cada día me lo paso más pipa con el uso de ChatGPT, en uno de nuestros dailys, uno de los programadores más seniors estaba hablando sobre la necesidad de que en el equipo fueramos más DRY. Como podéis imaginar, la cara de algunos era una jota, sobre todo los más nuevos, que desconocían esta jerga que usamos a veces en el desarrollo.
Después de explicar lo que era el principio DRY, se me ocurrió pedirle a ChatGPT que me elaborara una lista de aquellos que son más comunes para compartirlos con los equipos de desarollo y este es el resultado que me devolvió.
Acrónimo | Significado | Descripción |
---|---|---|
DRY | Don’t Repeat Yourself | Los fragmentos de código no deben repetirse en diferentes partes del software. |
SOLID | Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion | Conjunto de cinco principios de diseño orientados a objetos. |
KISS | Keep It Simple, Stupid | Las soluciones más simples suelen ser las mejores. |
YAGNI | You Aren’t Gonna Need It | No se debe añadir funcionalidad a menos que sea necesaria. |
TDD | Test-Driven Development | La escritura de pruebas automatizadas antes de escribir el código de producción. |
Agile | Adaptive, Collaborative, Iterative, Incremental | Conjunto de metodologías de desarrollo de software centradas en la entrega temprana y continua de software funcional. |
GRASP | General Responsibility Assignment Software Patterns | Conjunto de patrones de diseño orientados a objetos que se centran en la asignación de responsabilidades entre los objetos. |
DDD | Domain-Driven Design | Metodología de diseño de software que se centra en el modelado del dominio del problema. |
BDD | Behavior-Driven Development | Metodología de desarrollo de software que se centra en el comportamiento esperado del software. |
CI/CD | Continuous Integration/Continuous Deployment | Prácticas de desarrollo de software centradas en la integración y entrega continuas del software. |
XP | Extreme Programming | Metodología de desarrollo de software que se centra en la simplicidad, la comunicación, el feedback y la entrega temprana y continua del software. |
Es importante tener en cuenta que esta lista no es exhaustiva y que existen muchos otros acrónimos y principios relevantes en ingeniería de software, pero como una primera aproximación me parecío bastante buena, sobre todo porque mostró los más habituales en el desarrollo actual.
¿Y tú, cual acronimo consideras indispensable para tu dia a dia?
Si quieres más sobre desarrollo de software…