Skip to main content

Cos'è un albero di sintassi astratto?

Un albero di sintassi astratto (AST) è una struttura sintattica fatta per rappresentare le funzioni che si verificano all'interno di un programma.Si basa sul codice sorgente della programmazione.In genere gerarchico nel design, l'albero di sintassi astratto inizia dalle funzioni di base e flussi verso il basso per mostrare le funzioni e il codice più coinvolti all'interno di ciascuna funzione di base.L'uso di questo albero rende più facile per i programmatori visualizzare il codice senza guardare attraverso il codice sorgente stesso, che è molto più lungo e può rivelare difetti o debolezze nel codice.L'albero si chiama astratto, non perché è difficile da capire o ha una forma astratta, ma perché non include la sintassi della codifica come segni di parentesi e altri simboli che inevitabilmente compaiono nel codice.

Quando un programmatore crea un programma, deve costruire le funzioni da cose come if-then dichiarazioni e o le dichiarazioni altro.Quando si guarda il codice sorgente, può essere difficile vedere se ogni istruzione e condizione è stata completamente soddisfatta e se tutte le funzioni sono state create correttamente.Un albero di sintassi astratto offre al programmatore un modo rapido per guardare oltre la programmazione per vedere ogni condizione e come si applica al programma in generale.

L'albero è realizzato in modo gerarchico.Nella parte superiore è una delle dichiarazioni principali e, da tale affermazione, i rami fluiscono verso il basso per mostrare ciò che soddisfa le condizioni.Questo continua, mostrando altre funzioni e condizioni per l'intero programma.Anche le variabili nella programmazione vengono spesso visualizzate.La maggior parte dei linguaggi di programmazione ha la capacità di generare un albero di sintassi astratto.

Abstract di solito significa mal formato, difficile da capire o amorfo.Questo non è il caso di un albero di sintassi astratto.Il motivo per cui viene utilizzato la parola astratto è perché l'albero non visualizza la sintassi e la programmazione così com'è;Piuttosto, rimuove simboli impliciti che non sono importanti per il display.Ad esempio, le parentesi sono spesso usate abbastanza liberamente nella programmazione, ma non sono mostrate sull'albero.Questo perché mostrare questa sintassi prende molto più spazio, rende più difficile guardare l'albero e il programmatore saprebbe di questi simboli nel codice sorgente.

Se un programmatore vuole vedere questi simboli ausiliari, un albero di sintassi concreto èspesso impiegato.Questi alberi sono simili alla varietà astratta, solo che vanno più in dettaglio con tutti i simboli.Questo albero è migliore per guardare a pezzi mancanti di simboli o codice, mentre l'albero astratto è migliore per verificare le funzioni e le variabili del programma.