Innholdsfortegnelse:
Definisjon - Hva betyr Computational Reflection?
Beregningsrefleksjon er et programs evne til å endre seg selv mens du kjører. Kildekoden til programmet blir behandlet som data av seg selv, slik at passende modifikasjoner kan gjøres av programmet under løpetid. Programmer som er i stand til å endre sin egen kildekode, eller kildekoden til et annet program, under løpetid kalles metaprogrammer. Beregningsrefleksjon gjør at programmereren kan spare tid på å implementere noen deler av programmet, som blir generert av selve programmet ved kjøretid.
Techopedia forklarer Computational Reflection
Metaprogrammering kan oppnås ved tre metoder:
- Det utførende programmet eksponerer sin egen kildekode for runtime-miljøet og passende endringer blir introdusert i programmet. Eksponeringen kan skje gjennom en direkte kobling til tolken i programmet eller gjennom veldefinerte eksterne grensesnitt.
- Strengeuttrykk innenfor kildekoden utløser visse metaprogrammeringsprosedyrer under kjøretid.
- Et generelt programmeringstransformasjonssystem bruker kommandoer som er spesifikke for programmeringsspråket til kildekoden ved innkalling.
En fordel med beregningsreflekterte systemer er at programmet er tilpasningsdyktig ved kjøretid. Ethvert programuttalelse kan endres ved kjøretid ved hjelp av refleksjonsuttalelsen. Dette systemet er langt bedre enn metodeoverskridelse, der oppførselen bestemmes av metoden som kalles på kjøretid.