Rekord
egy adatbázis információs blokkja / From Wikipedia, the free encyclopedia
A számítástechnikában a rekord (más néven struktúra, összetett adat) egy alapvető adatszerkezet. Egy adatbázisban vagy táblázatban a rekordokat általában " soroknak " nevezik.[1][2][3][4]
A rekord mezők gyűjteménye, amelyek lehetnek különböző adattípusúak, általában fix számúak és sorrendben vannak elhelyezve.[5] A rekord mezőit néha tagoknak is nevezik, különösen objektumorientált programozásban. A mezőket elemeknek is nevezhetjük, bár ez összetévesztheti a gyűjtemény elemeivel.
Például egy dátumot tárolhatunk egy rekordban, amely egy numerikus évszám mezőt, egy stringként ábrázolt hónapmezőt és egy numerikus hónapnap mezőt tartalmaz. Egy személyi rekord tartalmazhat nevet, fizetést és rangot. Egy kör rekord tartalmazhat egy középpontot és egy sugarat - ebben az esetben a központot maga is egy pont rekordként ábrázolhatjuk, amely tartalmazza az x és y koordinátákat.
A rekordok megkülönböztethetők a tömböktől azzal a jellemzővel, hogy mezőik száma a rekord definíciójában van meghatározva, és a rekordok egy heterogén adattípusok; nem minden mezőnek kell ugyanolyan típusú adatot tartalmaznia.[6]
A rekord típus egy olyan adattípus, amely leírja az ilyen értékeket és változókat. A legtöbb modern számítógépes nyelv lehetővé teszi a programozó számára, hogy definiáljon új rekord típusokat. A definíció magában foglalja minden mező adattípusának és azonosítójának (név vagy címke) meghatározását, amelyen keresztül hozzáférhetők. A típuselméletben általában a termék típusokat (amelyeknek nincsenek mezőneveik) részesítik előnyben egyszerűségük miatt, de a megfelelő rekord típusokat tanulmányozzák olyan nyelvekben, mint például a System F-sub. Mivel a típuselméleti rekordok adatok mellett elsőrendű funkciókkal rendelkező mezőket is tartalmazhatnak, képesek kifejezni az objektumorientált programozás számos jellemzőjét.
Rekordok létezhetnek bármely tárolóeszközön, beleértve a fő memóriát és a tömegtároló eszközöket, például a mágnesszalagokat vagy a merevlemezeket. A rekordok alapvető komponensei a legtöbb adatszerkezetnek, különösen a kapcsolt adatszerkezeteknek. Sok számítógépes fájl logikai rekordok tömbje formájában van szervezve, gyakran hatékonyabbá téve azokat a nagyobb fizikai rekorodokba vagy blokkokba csoportosítással.
Egy függvény vagy eljárás paramétereit gyakran úgy lehet tekinteni, mint egy rekordváltozó mezőit; és a függvénynek átadott argumentumok tekinthetők úgynevezett rekordértéknek, amelyet a híváskor a változónak rendelnek. Ezenkívül, a gyakran használt hívások implementálásához használt hívási veremben minden bejegyzés egy aktiválási rekord vagy hívási keret, amely tartalmazza az eljárás paramétereit és helyi változóit, a visszatérési címet és egyéb belső mezőket.
Egy objektum az objektumorientált nyelvekben lényegében egy rekord, amely eljárásokat tartalmaz a rekord kezelésére; és az objektumtípusok a rekordtípusok bővítése. Valójában a legtöbb objektumorientált nyelvben a rekordok csak az objektumok speciális esetei, és egyszerű adatstruktúráknak (PODS-eknek) nevezik őket az objektumoktól megkülönböztetve, amelyek OO funkciókat használnak.
Egy rekordot tekinthetünk a számítógépes analógjának egy matematikai sor bár egy sort lehet vagy nem lehet tekinteni rekordnak, és fordítva, a konvencióktól és a konkrét programozási nyelvtől függően. Hasonlóan, egy rekord típust tekinthetünk a számítógépes nyelv analógjának két vagy több matematikai halmaz Descartes-féle szorzatának, vagy az absztrakt terméktípus megvalósításának egy adott nyelvben.