Techopedia selittää Float
Tietokoneohjelmoinnin alkuajoista lähtien float on tarjonnut mahdollisuuden pitää tietotyyppeinä lukuja, mukaan lukien desimaalimurtolukuja. Floatin luonteen ymmärtäminen on elintärkeää tyyppimuunnoksessa, muuttujien julistamisessa ja muuttujien käyttämisessä koodipohjassa.
Jos tietotyyppejä ei käsitellä oikein, seurauksena voi olla virheitä.
Varhaisiin esimerkkeihin floatin käytöstä kuuluu FORTRAN, jossa float-tietotyyppiä kutsuttiin nimellä ”double precision”.”
Olikin olemassa myös ”real”-tietotyyppi, joka viittasi yhden tarkkuuden liukulukuun.
Toinen varhainen liukulukua hyödyntävä kieli oli COBOL, jota monet laitokset käyttävät edelleen hyvin paljon, yksinkertaisesti siksi, että vanhojen järjestelmien siirtämistä ei haluta. Eräässä Medium-artikkelissa, jossa puhutaan COBOLin laajamittaisesta käytöstä, tuodaan erinomaisesti esiin se, miten arvokkaita float-tietotyypit voivat olla ohjelmistoissa.
Suorana esimerkkinä mietitäänpä verohallinnon tieto-ohjelmaa ja sitä, käytettäisiinkö siinä float-tietotyyppiä.
Jos verohallinnon vaatimukset eivät edellytä dollarin osan ilmoittamista, kokonaislukumuoto on täysin riittävä. Muuttujat voisivat kaikki olla kokonaislukuja, ja float-muotoista esitystapaa voidaan välttää, mikä helpottaa jonkin verran koodin tehostamista.
Toisaalta, jos ohjelmassa pitäisi ilmoittaa dollarin osa, ohjelmoijan pitäisi ilmoittaa muuttuja float-muodossa ja pitää sekä dollareita että senttejä desimaalimuodon mukaisesti. Esimerkiksi float-muuttuja 10,50 dollaria ilmoitettaisiin pitämällä sisällön 10,5.
Katsotaan nyt, jos tietotyypit eivät ole oikein. Jos ohjelma yrittää pitää 10,5 kokonaislukuna, se saattaa pitää ”10” tai tuottaa virheen. Parametrit on suunniteltava käyttöön otettavan todellisen datan ja järjestelmässä toteutettavien proseduurien mukaan.
Vuosien mittaan, kun tietokoneohjelmointi tuli mukaan, liukulukujen ja muiden tietotyyppien käyttöä optimoitiin erilaista muistinkäyttöä varten. Marianne Bellottin COBOL-artikkeliin palatakseni totean kuitenkin edelleen, että float-muuttujien mukauttaminen vaatii työtä ja voi johtaa kaikenlaisiin keskusteluihin siitä, mikä on paras ohjelmointikieli tai -ympäristö tiettyyn järjestelmään.
Konttien ja virtuaalikoneiden aikakaudella tuntuu erittäin epäintuitiiviselta, että näissä ympäristöissä toimiva koodipohja ei pystyisi käsittelemään desimaalilukuja, mutta ohjelmoijien on tehtävä arvioita ja oikeita päätöksiä:
- suunniteltaessa uusia järjestelmiä.
- Migroidessa vanhentuneita järjestelmiä.
- Tai tehtäessä rutiiniluonteista kunnossapitoa järjestelmille, jotka käyttävät tämäntyyppistä dataa.