(toiminnot)

hwechtla-tl: Tyyppi: viime muutokset

Jokaisella ohjelmointikielessä käsitellyllä arvolla (= [tieto tiedolla ([tieto eli data]) on jokin tyyppi. Esimerkiksi arvon 3 tyyppi on [luku] ja arvon "heipsis" tyyppi on [merkkijono]. Jokainen tyyppi on yksinkertainen [tietorakenne]. Tietorakenne on (tietokoneen näkökulmasta) rakenne, joka pystyy pitämään sisällään tietynlaista tietoa; ohjelmoijan [tietorakenne] ja määrittää, minkälaista tietoa kyseisentyyppiset arvot voivat sisältää. Esimerkiksi luku ei voi olla "fioo" eikä merkkijonoon voi upottaa listaa.

Ohjelmoijan näkökulmasta se on rakenne, jota käytetään tietyntyyppisen tyyppi määrittyy kahdella tavalla. Ensinnäkin tiedolla on ''eksplisiittinen'' tyyppi: ohjelmointikieli pitää kirjaa siitä, mitä tyyppiä mikin tieto on. Pythonilla eksplisiittisen tyypin saa selville mistä tahansa tiedosta funktiolla type(). Toisaalta semanttisessa mielessä tiedon käsittelyyn.

Tietorakenteita on kahdentyyppisiä, sisäänrakennettuja eli primitiivisiä:

* [luku] * [totuusarvo] * [merkkijono] * [lista] * [hajautus] tyypin määrittää se, mitä kyseisellä tiedolla voi tehdä: esimerkiksi lukuja voi laskea yhteen, vähentää ja niin edelleen, merkkijonoja muuntaa isoiksi tai pieniksi kirjaimiksi, jokaista [kokoelma]a voi pätkiä ja niin edelleen.

Sekä näitä yhdistelemällä saatuja, monimutkaisempia tietorakenteita. Joissakin ohjelmointikielissä pystyy määrittämään ''uusia tyyppejä'', mikä merkitsee, että ohjelmointikielen toteutuskin tietää, että tietorakenteenne uudentyyppisten tietojen eksplisiittinen tyyppi on erillinen kaikista muista tietorakenteista (= tyypeistä); joskus taas luomme vanhoja tietorakenteita yhdistelemällä uuden, joka kuitenkaan ei ole ohjelmointikielen näkökulmasta uusi tyyppi. Esimerkiksi jos esitämme lausetta sanojen listalla, ohjelmointikielen näkökulmasta kyseessä on yksinkertaisesti [lista], vaikka me tiedämmekin, että tuo lista sisältää nimenomaan lauseen sanoja. tyypeistä.

[...]


(viimeksi muutettu 25.09.2008 09:27)