sábado, 1 de maio de 2010

Compilador e Interpretador

 Como já foi dito pelo Douglas, existem duas formas gerais da qual um programa pode ser executado(compilada ou interpretada). Teoricamente, toda linguagem de programação pode usar ambos os métodos, porém é mais comum serem encontradas de uma forma ou de outra. Por exemplo o python é geralmente interpretada e C/C++ compilada.
 Enquanto o interpretador lê linha por linha do código-fonte cada vez que é executada, o compilador lê o código uma vez e o transforma em um código-binário(também conhecido como código objeto) que é o "dialeto" da máquina. Pelo arquivo compilado já estar na linguagem da máquina, não é necessário instalar nenhum outro programa para rodar o aplicativo, diferente do código interpretado que requer o uso do interpretador toda vez que o software for usado.
 No interpretador, toda mudança feita no código-fonte altera o funcionamento do software, o que facilita muito a edição do programa. No compilador acontece justamente o contrário, qualquer mudança no código-fonte não ira alterar em nada o software. Para alterar o aplicativo será necessário "re-compilar" o código-fonte e substituir o código-objeto anterior.
 As vantagens de cada modelo são geralmente separadas desta maneira:
  1. Compiladores:
    • A execução do programa é mais rápida.
    • Permite otimização do código por parte do compilador
  2. Interpretadores
    • Consomem menos memória.
    • Alteração mais rápida.
    • Resultado imediato do programa/rotina.
Tendo em vista ambos os lados, a melhor forma de execução irá depender fortemente do projeto que quer desenvolver. Na computação nem tudo é 0 e 1.

Fonte: C Completo e Total - 3ª edição - Herbert Schildt

0 comentários:

Postar um comentário