Middle
¿Qué principios de desarrollo conoces?
sobes.tech AI
Respuesta de la IA
Principales:
- DRY (No te Repitas): Evitar la duplicación de código extrayendo lógica repetitiva en funciones, clases o módulos.
- KISS (Keep It Simple, Stupid): Buscar la simplicidad y claridad en el código.
- YAGNI (No lo Necesitarás): No agregar funcionalidades que no sean necesarias en el momento.
- SOLID: Un conjunto de cinco principios de diseño orientado a objetos:
- Principio de Responsabilidad Única: Una clase debe tener una sola razón para cambiar.
- Principio de Abierto/Cerrado: Las clases deben estar abiertas a extensión, pero cerradas a modificación.
- Principio de Sustitución de Liskov: Los objetos de una clase derivada deben poder reemplazar a los objetos de la clase base sin alterar la corrección del programa.
- Principio de Segregación de Interfaces: Los clientes no deben depender de interfaces que no utilizan.
- Principio de Inversión de Dependencias: Los módulos de alto nivel no deben depender de módulos de bajo nivel. Ambos deben depender de abstracciones. Las abstracciones no deben depender de detalles. Los detalles deben depender de abstracciones.
Otros:
- Convención de Código: Seguir los estándares de codificación establecidos (por ejemplo, PSR-1, PSR-12 en PHP) para mejorar la legibilidad y coherencia del código.
- Desarrollo Guiado por Pruebas (TDD): Escribir pruebas antes de escribir el código funcional.
- Diseño Orientado al Dominio (DDD): Enfocarse en el dominio al desarrollar, creando un modelo que refleje la lógica del negocio.
- Arquitectura Limpia/Arquitectura Hexagonal: Enfoques arquitectónicos que buscan separar la lógica de negocio de los detalles de infraestructura.