SOLID is een afkorting voor het programmeren van software. Ze werd bedacht door Michael Feathers voor de eerste vijf principes die Rober C. Martin[1] aangaf aan het begin van de jaren 2000.
De afkorting staat voor de vijf belangrijkste princiepes in het object-georiënteerde programmeren. Door deze princiepes toe te passen wordt het te maken systeem duurzamer: gemakkelijker te onderhouden en beter uit te breiden. Hierdoor wordt de return of investment vergroot wanneer een software SOLID gemaakt wordt.
Zo programmeert OO-Creation ook volgens deze priciepes, waardoorde return of investment gemaximaliseerd wordt. Ook de mogelijkheid tot uitbreiding en onderhoud wordt verbeterd, waardoor in de toekomst met weinig investering het systeem uitgebreid kan worden naarmate uw behoeften veranderen.
De SOLID-princiepes maken deel uit van een meer globale strategie van agile ontwikkeling en adaptief programmeren.
Hieronder een korte samenvatting wat de SOLID-principes inhouden. De princiepes zijn gefocused op de technische aspecten van software development.
Letter | Staat voor | Princiepe |
---|---|---|
S | Single responsibility principle | Een klasse zou maar één verantwoordelijkheid mogen hebben |
O | Open/closed principle | Software entiteiten moeten open zijn voor uitbreiding, maar gesloten voor wijziging. |
L | Liskov substitution principle | Objecten zouden vervangbaar moeten zijn door instanties van hun subsypes zonder dat de juiste werking van het programma beïnvloed wordt. |
I | Interface segregation principle | Veel client-specifieke interfaces zijn beter dan één algemene interface. |
D | Dependency inversion principle | Men zou afhankelijk moeten zijn van abstracties, niet van concrete implementaties. |