Techopedia explains Float
A számítógépes programozás kezdete óta a lebegőszámok biztosítják a számok, köztük a tizedes törtek adattípusként való tárolásának lehetőségét. A float természetének megértése létfontosságú a típuskonverzió, a változók deklarálása és a változók kódbázison belüli használata során.
Ha az adattípusokat nem megfelelően kezelik, hibák keletkezhetnek.
A float használatának korai példái közé tartozik a FORTRAN, ahol a float adattípust “dupla pontosságúnak” nevezték.”
Egy “real” adattípus is létezett, amely az egyszeres pontosságú lebegőpontos számot jelölte.
A másik korai nyelv, amely a floatot használta, a COBOL volt, amelyet sok intézmény még mindig nagyon sokan használnak, egyszerűen az örökölt rendszerek migrálásától való idegenkedés miatt. A COBOL széleskörű használatáról szóló Medium-cikk kiválóan rámutat arra, hogy a szoftverekben milyen értékes lehet a float adattípus.
A közvetlen példa kedvéért gondoljunk egy IRS-adatprogramra, és arra, hogy használna-e floatot vagy sem.
Ha az IRS követelményei nem követelik meg a dollár egy részének jelentését, az egész szám formátum teljesen elegendő. A változók mind egész számok lehetnek, és elkerülhető a lebegő alakú megjelenítés, ami megkönnyít bizonyos hatékonyságot a kódban.
Ahol viszont a programnak egy dollár egy részét kellene jelentenie, a programozóknak egy változót lebegő alakúként kellene deklarálniuk, és mind a dollárokat, mind a centeket a tizedes formátumnak megfelelően kellene tárolniuk. Például egy 10,50 dollárra vonatkozó float változót deklarálnánk, amely a 10,5 tartalmat tartaná.
Most nézzük meg, hogy az adattípusok nem megfelelőek-e. Ha a program egész számként próbálja tartani a 10,5-et, akkor “10”-et tart, vagy hibát generál. A paramétereket aszerint kell megtervezni, hogy a rendszerben milyen valós adatokat és eljárásokat fognak alkalmazni.
Az évek során, ahogy a számítógépes programozással együtt járt, a lebegőszámok és más adattípusok használatát különböző típusú memóriahasználatra optimalizálták. Visszatérve azonban Marianne Bellotti COBOL-cikkéhez, a lényeg továbbra is az, hogy a float-változók befogadása munkát igényel, és mindenféle vitákhoz vezethet az adott rendszer számára legjobb programozási nyelv vagy környezet kiválasztásáról.
A konténerek és virtuális gépek napjaiban erősen ellentmondásosnak tűnik, hogy egy ilyen környezetben futó kódbázis nem képes kezelni a tizedes számokat, de a programozóknak el kell végezniük az értékeléseket és meg kell hozniuk a megfelelő döntéseket:
- az új rendszerek tervezése során.
- a régebbi rendszerek migrálása során.
- vagy az ilyen típusú adatokat használó rendszerek rutinkarbantartása során.