Hvad er SOLID-principperne?

De er et sæt designretningslinjer til at forbedre vedligeholdelsen og skalerbarheden af software.

🏛️

Oprindelse

SOLID-principperne blev introduceret af Robert C. Martin, også kendt som Uncle Bob, i hans arbejde med objektorienteret design i begyndelsen af 2000'erne. Disse principper er en samling af fem designkoncepter, der hjælper udviklere med at skabe softwaresystemer.

📕

Definition

SOLID er et akronym, der står for fem designprincipper i objektorienteret programmering: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation og Dependency Inversion.

🔍

Formål

Disse principper giver et rammeværk for at designe software, der er nemt at vedligeholde, forstå og udvide, hvilket gør det muligt for udviklere at undgå almindelige design- og arkitekturfaldgruber.

🔨

Single Responsibility (SRP)

En klasse bør kun have én grund til at ændre sig.

🔒

Open/Closed (OCP)

Softwareenheder bør være åbne for udvidelse, men lukkede for modification.

🔄

Liskov Substitution (LSP)

Objekter af en superklasse bør kunne udskiftes med objekter af dens underklasser uden at påvirke funktionaliteten.

🔀

Interface Segregation (ISP)

Mange klient-specifikke interfaces er bedre end ét generelt interface.

🔄

Dependency Inversion (DIP)

Højniveau-moduler bør ikke afhænge af lavniveau-moduler; begge bør afhænge af abstraktioner.