Home

precondities

Precondities zijn de voorwaarden die voldaan moeten zijn voordat een functie, methode of operatie wordt uitgevoerd. Ze beschrijven de aannames over invoer en toestand waarop de uitvoering gebaseerd is, zoals geldige invoer, een niet-lege lijst of een actieve verbinding. Precondities vormen daarmee een soort contract tussen de aanroeper en de implementatie.

In softwareontwerp, vooral bij contractgericht programmeren (design by contract), geven precondities aan welke aannames de aanroepende

Voorbeelden: divide(a,b) vereist dat b niet gelijk is aan 0; getElement(array, index) vereist 0 ≤ index < lengte(array).

Behandeling en praktijk: precondities worden vaak afgedwongen door invoercontroles, validaties of asserties. Ze bevorderen modulariteit en

Relaties met andere concepten: precondities onderscheiden zich van postcondities en invariants; ze spelen een centrale rol

code
maakt.
De
implementatie
mag
ervan
uitgaan
dat
deze
voorwaarden
waar
zijn
en
hoeft
ze
meestal
niet
expliciet
te
controleren;
als
ze
niet
voldaan
zijn,
kan
het
gedrag
ongedefinieerd
of
fout
zijn.
Postcondities
beschrijven
wat
er
na
de
uitvoering
geldt,
uitgaande
van
de
precondities.
Invarianties
zijn
condities
die
gedurende
een
loop
of
gedurende
een
toestand
constant
blijven.
Zulke
precondities
dienen
als
contract
en
helpen
bij
het
voorkomen
van
fouten
door
ongeldige
invoer
of
onjuiste
toestanden.
herbruikbaarheid
doordat
componenten
kunnen
worden
ontworpen
en
getest
op
basis
van
duidelijke
contracten.
in
formelere
methoden
zoals
Hoare-logica
en
in
contractgebaseerde
specificaties.
Ze
komen
ook
terug
in
opleidings-
en
projectafhankelijkheden
als
prerequisites
voor
activiteiten.