Skip to main content

Vad är den abstrakta syntaxen?

Abstract Syntax är ett sätt för datorprogrammerare att kartlägga strukturen i programmet de vill skapa utan att oroa sig för den faktiska koden som behövs för att implementera den.Det gör att programmeraren kan fokusera på vad programmet behöver göra innan han fokuserar på hur man får datorn att faktiskt utföra de önskade funktionerna.Den abstrakta syntaxen beskriver programmens specifika uppgifter, till exempel att lägga till två nummer tillsammans, och visar vilka typer av data som kan användas inom det programmet.När den abstrakta kartläggningen är klar dras ett abstrakt syntaxträd, vilket matchar de abstrakta begreppen med konkret syntax mdash;De faktiska symbolerna som en programmerare måste skriva ut för att köra programmet hon skapar.

Idén till abstrakt syntax är att fokusera på datatyper och deras relationer utan att fastna i detaljerna om hur man kodar dem.Datorkoden är mycket annorlunda än mänskligt språk, och det är svårt att försöka tänka på dessa termer.Istället gör programmerare en lista över stegen som programmet behöver slutföra och sedan använda konkret syntax för att matcha de abstrakta termerna med datorkodtermer som utför dessa steg.Ofta kommer programmeraren att innehålla datatyper i hennes abstrakta markering för att visa vilka typer av data mdash;Vare sig det är nummer, brev eller decimaler och mdash;programmet kan arbeta med.Specifika datatyper krävs emellertid inte i detta skede i programmering, och programmeraren kan välja att använda abstrakta datatyper, som är rent teoretiska och kommer att ersättas med specifika datatyper när programmet skrivs.

Den här typen av abstrakt idéav programmering används ofta i kompilatorteorin.Datorer kan bara förstå två värden: 1s och 0s.Detta kallas binär kod.För att datorn ska förstå ett program skrivet på ett programmeringsspråk måste det sammanställa eller översätta orden och bokstäverna till en ström av 1s och 0s.Kompilatorer är komplexa för att skapa och kartlägga en vag eller abstrakt idé om vad de behöver göra hjälper en programmerare att planera felfri kod.

När programmeraren vill kartlägga den abstrakta syntaxen till konkret syntax och starta kodning av programmet eller kompilatorn skapar hon ett abstrakt syntaxträd.Detta är helt enkelt en lista över alla abstrakta instruktioner som är skrivna, till exempel Lägg till två variabler, med en linje som dras från varje abstrakt term till den specifika kodrad som behövs för att utföra den instruktionen.Programmeraren kan använda alla abstrakta termer hon vill, men det är vanligare att använda välkända kodtermer som var för variabel och int för heltal.