Primeira Apostila - Noz Eh Maker
Primeira Apostila - Noz Eh Maker
Primeira Apostila - Noz Eh Maker
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
• Compiladores:<br />
Um compilador é um tipo de aplicativo que cria uma “camada de<br />
abstração” entre o programador e o computador. Em outras palavras, o<br />
compilador traduz tudo que é escrito por um usuário de um jeito que a<br />
máquina entenda, e de forma que interprete essa informação.<br />
Em todo o universo computacional, existem várias linguagens de<br />
programação categorizadas da seguinte forma:<br />
• Alto Nível (C++, Java)<br />
• Médio Nível (C, Pascal)<br />
• Baixo Nível (Assembly)<br />
Quanto mais baixo o nível, mais próximo estamos da linguagem de<br />
montagem da máquina. Um exemplo de linguagens de baixo nível que<br />
conhecemos é a linguagem de bits (0 ou 1) e Assembly (que trabalha<br />
diretamente com operações de registros e endereços de memória).<br />
Quando falamos de médio e alto nível, falamos de linguagens que<br />
cada vez mais “encobrem” detalhes na hora de implementar, e quanto<br />
maior o nível, menos detalhes específicos ligados a hardware teremos que<br />
nos preocupar. Por exemplo: se estivermos mexendo com C++, não<br />
precisaremos nos preocupar com qual endereço de memória ou parte física<br />
do disco teremos que guardar a informação. O compilador e a linguagem de<br />
programação se encarregará disso automaticamente.<br />
O compilador cria a “ponte de comunicação” entre uma linguagem<br />
humanamente simples e prática ao ser humano trabalhar, sem perder todo<br />
o excesso de informação e detalhes que a máquina precisa.<br />
Um compilador trabalha passo-a-passo da seguinte forma:<br />
• O compilador lê linha após linha (levando em conta o fluxo de<br />
código), verificando se toda a sintaxe foi descrita corretamente<br />
(se estiver errada, retornará uma mensagem de erro<br />
detalhada ao usuário);<br />
• Traduz o código-fonte de C++ (por exemplo) pra linguagem de<br />
máquina;<br />
• Se tudo for interpretado corretamente, ele irá criar um arquivo<br />
com extensão .OBJ, com todas as linhas traduzidas, e um<br />
arquivo .EXE, que é executado pelo sistema operacional;<br />
Outro aspecto importante são as evoluções na área de<br />
compiladores, que cada dia mais deixam de ser apenas “interpretadores de<br />
comandos”, e se tornam verdadeiros ambientes de desenvolvimento,<br />
trazendo consigo várias opções de compilação, depuração, bibliotecas<br />
prontas etc. Um exemplo de ambientes de desenvolvimento nesse estilo<br />
são aplicativos como o Eclipse e o Microsoft Visual Studio.