Indholdsfortegnelse:
Definition - Hvad betyder Computational Reflection?
Beregningsmæssig reflektion er et programs evne til at ændre sig selv under kørsel. Programmets kildekode behandles som data i sig selv, for at passende ændringer kan foretages af programmet under kørsel. Programmer, der er i stand til at ændre deres egen kildekode eller kildekoden til et andet program under runtime kaldes metaprogrammer. Beregningsmæssig reflektion giver programmereren mulighed for at spare tid på implementering af nogle dele af programmet, som genereres af selve programmet ved kørsel.
Techopedia forklarer Computational Reflection
Metaprogrammering kan opnås ved tre metoder:
- Det udførende program udsætter sin egen kildekode for runtime-miljøet, og passende ændringer introduceres i programmet. Eksponeringen kan ske gennem en direkte forbindelse til tolken i programmet eller gennem veldefinerede eksterne grænseflader.
- Strengeudtryk inden for kildekoden udløser visse metaprogrammeringsprocedurer i løbet af runtime.
- Et generelt programmeringstransformationssystem anvender kommandoer, der er specifikke for programmeringssproget for kildekoden ved tilkaldelse.
En fordel ved beregningsmæssigt reflekterende systemer er, at programmet kan tilpasses ved kørsel. Enhver program erklæring kan ændres på kørselstidspunktet ved hjælp af refleksangivelsen. Dette system er langt bedre end metodeoverskridelse, hvor adfærden bestemmes af metoden, der kaldes på kørselstidspunkt.
