Home

typeconversie

Typeconversie is het proces waarbij een waarde van het ene datatype wordt omgezet naar een waarde met een ander datatype. Het komt voor in programmeertalen, databases en dataformaten en maakt voorzichtige compatibiliteit tussen verschillende onderdelen mogelijk. In statisch getypeerde talen kan conversie tijdens compilatie plaatsvinden, terwijl in dynamisch getypeerde talen conversie meestal tijdens runtime optreedt.

Er zijn twee hoofdtypen conversie: expliciete en impliciete. Expliciete conversie vereist een duidelijke aanwijzing, bijvoorbeeld een

Veelvoorkomende risico's zijn dat data verloren gaat of dat precisie afneemt, bij bijvoorbeeld omzetting van een

Praktische aspecten: in databases kunnen gegevens worden omgezet met CAST of CONVERT; in talen bestaan casting-operatoren

Beste praktijken zijn onder meer expliciete conversie waar verlies van informatie mogelijk is, inputvalidering en het

cast
of
een
conversiefunctie
(bijv.
in
C:
(double)
i;
in
Python:
float("3.14")).
Impliciete
conversie
gebeurt
automatisch
door
de
taal
wanneer
een
waarde
in
een
context
past,
bijvoorbeeld
bij
wijdere
types
(int
naar
double)
of
bij
overloading
van
operatoren.
float
naar
een
integer,
of
bij
overflow.
Onverwachte
coercie
kan
ook
runtimefouten
veroorzaken,
bijvoorbeeld
bij
proberen
van
geen-numerieke
strings
om
te
zetten.
en
conversiefuncties,
soms
met
nuances
zoals
narrowing
vs.
widening.
In
frameworks
kan
een
TypeConverter
of
vergelijkbare
mechanismen
bestaan
voor
databinding
en
serialisatie.
vermijden
van
ongewenste
coercie
door
duidelijke
regels.
Bij
ontwerp
dient
men
rekening
te
houden
met
de
taal-
en
platformspecifieke
eigenschappen
van
typeconversie.