Vahva ja heikko tyypitys

Vahva ja heikko tyypitys on ohjelmointikielien tyyppijärjestelmän ominaisuus, joka määrittelee miten erityyppisten muuttujien väliset muunnokset käsitellään keskenään. Kieli voi käyttää joko vahvaa tai heikkoa tyypitystä.

Vahvan ja heikon tyypityksen karkeaksi eroksi voidaan sanoa, että heikko tyypitys tekee muunnokset toisiinsa liittymättömien tyyppien välillä implisiittisesti, kun taas vahva tyypitys ei salli muunnosta. Vahvasti tyypitetty kieli vaatii eksplisiittisen muunnoksen tyyppien välillä kuten cast-operaattorin käytön. Toisiinsa liittymättömillä tyypeillä tarkoitetaan eri perhettä: lyhyt ja pitkä kokonaisluku voivat liittyä samaan mutta merkkijono ja kokonaisluku eivät.

Huomaa, että joistakin kielistä kuten C-kielestä on esitetty ristiriitaisia tietoja vahvan ja heikon tyypityksen suhteen. Osoittimen käytöllä tyyppijärjestelmän voi ohittaa kokonaan.

Eri ohjelmointikielet käyttävät joko vahvaa tai heikkoa tyypitystä.
Vahvan tyypityksen ansiosta ohjelmointikielen kääntäjä huomaa jotkin ohjelmointivirheet automaattisesti.

Vahvaa tyypitystä käyttäviä kieliä 
 Ada
 Java
 C++
 C#
 Pascal
 Fortran

Heikkoa tyypitystä käyttäviä kieliä 
 Perl
 JavaScript
 PHP

Lähteet 

Ohjelmointi