2.1. Linguagens de programação

Uma linguagem de programação define o vocabulário e as regras de construção de frases que nos permitem escrever instruções para o computador executar.

Embora as ações que nós, como utilizadores de um computador, pedimos ao computador para executar nos pareçam altamente complexas, na verdade os computadores só estão preparados para receber instruções extremamente simples. Essas instruções são em número reduzido e mandam o computador fazer tarefas muito, muito básicas – constituem aquilo a que se chama uma linguagem de programação de baixo nível, também chamada linguagem máquina ou linguagem assembly. Cada comando que damos ao computador (por exemplo, mover um ficheiro entre pastas, imprimir um texto) é na verdade um programa contendo muitas dessas instruções de baixo nível. Esse programa foi feito por alguém.

Ao longo do tempo foram-se inventando linguagens de programação de mais alto nível, ou seja, mais próximas da língua que falamos, para tornar mais fácil a tarefa de programar.

Porque as instruções escritas numa linguagem de alto nível não são entendidas por um computador, elas têm que ser traduzidas para instruções de baixo nível. Esse é o papel dos compiladores, que (também eles) são programas que pegam num ficheiro contendo o texto de um programa numa linguagem de alto nível e geram um ficheiro com as instruções correspondentes numa linguagem de baixo nível. São estas últimas que o computador executa. Claro que cada linguagem tem o seu próprio compilador.

Os interpretadores também são programas que fazem a tradução de programas para instruções de baixo nível, mas fazem-no à medida que vão executando o programa, instrução a instrução.

O compilador de programas Java traduz um programa escrito na linguagem Java (guardado num ficheiro com extensão java) para um programa escrito numa linguagem de baixo-nível a que se chama Java bytecode; essas instruções são guardadas num novo ficheiro com a extensão class.

Este bytecode é independente do sistema operativo específico onde o programa vai ser executado – qualquer computador capaz de executar programas Java será capaz de interpretar/traduzir este ficheiro e executá-lo.

Para que um computador específico consiga executar o programa em bytecode, tem que ter instalada uma Java Virtual Machine (JVM), que é um programa que consegue ler e executar esse bytecode.

 

 


 

Anterior: 2. Escrever programas

Seguinte: 2.2. Programas Java