Hoje nós vamos
falar sobre algumas semelhanças e diferenças desses dois tipos de tradutores. Em
postagens anteriores nós falamos as definições de cada um, por isso não abordaremos
o tema por completo, apenas focaremos nas diferenças. (interpretadores e compiladores)
Como vimos, compilador
é um programa ou um grupo de programas que escrito por uma linguagem ao ser
compilado gera outro código que é interpretado pelo computador. Este código
compilado é chamado de código-objeto. Os compiladores analisam o código
em três partes: análise léxica, análise sintática e análise semântica. São
nessas análises que verificam se há algum erro na código feito pelo programador
e o informa ao usuário caso haja erro.
Já o
interpretador ao contrário do compilador roda o código fonte escrito como sendo
o código-objeto, ele traduz o programa linha a linha, o programa vai sendo utilizado
na medida em que vai sendo traduzido. Cada execução do programa precisa ser
novamente traduzido e interpretado, totalmente diferente do compilador.
Alguns
compiladores contam com um pré-processamento. Este pré-processamento é
responsável por modificar o código-fonte conforme necessidades que o compilador
identifique que sejam necessárias, por exemplo, otimização de código. Em
contrapartida, o interpretador analisa sintaticamente e semanticamente o
código, se estas duas etapas forem realizadas e executadas de forma correta o
código está pronto para o uso. Para melhor compreensão sobre a necessidade dos compiladores e interpretadores colocamos uma charge em
espanhol abaixo a fim de melhor abstração:
Em próximas
postagens falarei sobre as vantagens e desvantagens desses dois tipos de
tradutores, então até lá. Abraço e até a próxima!
Fontes: OficinaNet, CompVsInterp e Wikipedia
0 comentários:
Postar um comentário