Repaso
English

Explica SOLID con un ejemplo corto para cada letra.

Respuesta

  • S, Single Responsibility: InvoiceCalculator calcula; InvoiceRepository guarda; InvoicePdf renderiza.
  • O, Open/Closed: añade una clase DiscountStrategy nueva en lugar de editar un if/elif enorme.
  • L, Liskov Substitution: cualquier subclase de Storage debe mantener el mismo contrato (sin excepciones sorpresa, con el mismo significado).
  • I, Interface Segregation: Readable y Writable en lugar de una interface FileLike gigante.
  • D, Dependency Inversion: OrderService depende de una abstracción PaymentGateway; la implementación de Stripe se inyecta.
  • Cierra con el porqué: facilita los cambios, los tests y el trabajo en equipo. No sobrediseñes código pequeño.

Términos clave

Practica esta pregunta en Repaso