Hva er et abstrakt syntaksre?
Et abstrakt syntaks tre (AST) er en syntaktisk struktur laget for å representere funksjonene som oppstår i et program. Det er basert på kildekoden til programmeringen. Typisk hierarkisk i design, det abstrakte syntaks -treet starter fra de grunnleggende funksjonene og strømmer nedover for å vise de mer involverte funksjonene og koden i hver grunnleggende funksjon. Bruken av dette treet gjør det lettere for programmerere å visualisere koden uten å se gjennom selve kildekoden, noe som er mye lengre, og kan avsløre feil eller svakheter i koden. Treet kalles abstrakt, ikke fordi det er vanskelig å forstå eller har en abstrakt form, men fordi det ikke inkluderer kodingssyntaks som parentesmerker og andre symboler som uunngåelig vises i koden.
når en programmerer bygger et program, han eller hun må bygge funksjonene fra ting som "hvis-ete" stater og "eller" eller "eller hun har å bygge funksjonene. Når du ser på kildekoden, kan det være vanskelig å se om hver uttalelse ogTilstanden er fullstendig oppfylt, og hvis alle funksjonene er opprettet riktig. Et abstrakt syntaksre gir programmereren en rask måte å se på programmeringen for å se hver tilstand og hvordan det gjelder programmet generelt.
Treet er laget på hierarkisk måte. På toppen er en av hoveduttalelsene, og fra den uttalelsen strømmer grener nedover for å vise hva som tilfredsstiller forholdene. Dette fortsetter, og viser andre funksjoner og forhold for hele programmet. Variabler i programmeringen vises ofte også. De fleste programmeringsspråk har muligheten til å generere et abstrakt syntaksre.
abstrakt betyr vanligvis dårlig formet, vanskelig å forstå eller amorf. Dette er ikke tilfelle med et abstrakt syntaksre. Årsaken til at ordet "abstrakt" brukes er fordi treet ikke viser syntaks og programmering som det er; snarere fjerner det implisitte symboler tHatt er ikke viktig for skjermen. For eksempel brukes parenteser ofte ganske liberalt i programmering, men de er ikke vist på treet. Dette fordi det å vise denne syntaksen tar mye mer plass, gjør det vanskeligere å se på treet, og programmereren ville vite om disse symbolene i kildekoden.
Hvis en programmerer ønsker å se disse tilleggssymbolene, brukes ofte et betongsyntaksre. Disse trærne ligner på den abstrakte sorten, bare de går nærmere inn på alle symbolene. Dette treet er bedre for å se på manglende biter av symboler eller kode, mens det abstrakte treet er bedre for å sjekke opp programmets funksjoner og variabler.