terça-feira, 30 de junho de 2015

Compiladores vs Interpretadores: Diferenças


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! 




0 comentários:

Postar um comentário