En el software development (desarrollo de software), los architectural styles (estilos arquitectónicos) son cruciales para determinar cómo se estructuran y cómo funcionarán los sistemas. Cada architectural style tiene su propio conjunto de principios y patrones que abordan problemas y requisitos específicos. Seleccionar un software architectural style es una decisión crítica en el proceso de desarrollo de software, ya que impacta el performance (rendimiento), la maintainability (mantenibilidad), la scalability (escalabilidad) y el éxito general de la aplicación.
Nota: Esta es una traducción fiel al español (latino) del artículo original “Solid Relevance” escrito por Robert C. Martin (Uncle Bob).
Recientemente recibí una carta de alguien con una inquietud. Decía lo siguiente:
Durante años, el conocimiento de los principios SOLID ha sido una parte estándar de nuestro procedimiento de contratación. Se esperaba que los candidatos tuvieran un buen conocimiento práctico de estos principios. Sin embargo, últimamente, uno de nuestros gerentes, que ya no programa mucho, ha cuestionado si eso es sensato. Sus puntos fueron que el principio Abierto-Cerrado (Open-Closed) ya no es muy importante porque la mayor parte del código que escribimos no está contenido en grandes monolitos y hacer cambios en pequeños microservicios es seguro y fácil. El Principio de Sustitución de Liskov está muy desactualizado porque ya no nos enfocamos tanto en la herencia como lo hacíamos hace 20 años. Creo que deberíamos considerar la postura de Dan North sobre SOLID: “Simplemente escribe código simple”.