Skip to main content

Hva er metaprogrammering?

Metaprogrammering er prosessen med å skrive dataprogrammer som på sin side skriver andre programmer.Metaprogrammeringsprosessen gir større fleksibilitet til dataprogrammerere fordi arbeid som vanligvis gjøres i løpet av kjøretiden, blir tildelt kompileringstidsperioden.Denne prosessen frigjør programmererens tid til å fokusere på andre oppgaver fordi den kutter ned tiden det tar manuelt å skrive et programs kode.Rekompilering er unødvendig fordi metaprogrammering lar programmer takle nye situasjoner med større effektivitet.Metallspråk er betegnelsen gitt til dataspråket som metaprogrammet bruker.

Objektspråk er dataspråket til de programmene som er skrevet av Meta -programmeringsprosessen.Refleksivitet er et begrep gitt til metallspråk, som også kan føre til metaprogrammering.Metaprogrammering fungerer på forskjellige måter.En måte er at applikasjonsprogrammeringsgrensesnittet lar programmeringskoden få tilgang til innsiden av runtime -motoren.

En annen måte metaprogrammering fungerer er ved å la programmer skrive andre programmer gjennom den dynamiske utførelsesprosessen.I dette tilfellet brukes strenguttrykk i denne prosessen.Selv om det samme språket kan brukes i disse to prosessene, er det ikke uvanlig at språkene favoriserer den ene prosessen fremfor den andre.

Metaprograming fungerer også ved å omgå språket.Det gir mulighet for endring av språk gjennom programtransformasjonssystemer.Denne prosedyren gir metaprogrammering frihet til å bruke språk, selv om språket ikke bruker noen metaprogrammeringsegenskaper.

En kildekode er ikke nødvendig for metaprogrammering.Det kan gjøres ved en inkrementell sammenstilling eller av runtime-skiftende programmer.Datamaskinen Langaugae Lisp er det foretrukne språket for metaprogrammeringsprosessen.Dette er på grunn av enkelheten i denne typen dataspråk så vel som kraften.

Metaprogrammering som bruker LISP -språket fungerer ved å tillate evaluering av kode i løpet av programmets definisjonsperiode, i motsetning til runtime -perioden.Denne prosessen gjengir metaprogrammerspråket og vertsprogrammeringsspråket det samme.Når dette skjer, kan disse LISP -rutinene resirkuleres for metaprogrammeringsprosessen.

Andre språk har brukt denne nøyaktige prosessen med integrering av en programtolk.Denne tolken fungerer med dataene i programmet.Domenespesifikke programmeringsspråk i metaprogrammering er en annen form som skaper analysere og leksikale analysatorer.Disse lar brukeren bruke vanlige uttrykk for å definere språket.