Podemos definir uma linguagem de programação como um método padronizado para comunicar instruções para um computador. Ou seja, servir de um meio de comunicação entre computadores e humanos, por meio de um conjunto de regras sintáticas e semânticas usadas para definir um programa de computador, e assim especificar de forma precisa quais ações pretende-se que o computador execute.

De uma forma bem superficial podemos dizer que uma linguagem de programação tenha de ter as seguintes características:

  • Uma linguagem de programação deve ter uma sintaxe bem definida.
  • Uma linguagem de programação deve ser implementável (executável) com uma eficiência aceitável.
  • Uma linguagem de programação deve possibilitar expressar todo um problema computável.

 

Hoje existe inúmeras linguagens de programação, o que provavelmente faz pensar o por que disto? Na verdade a existência de tantas linguagens de programação é uma necessidade já que cada uma busca atender a um propósito diferente.

Além disto o mundo da computação tem evoluído significativamente nestas últimas décadas e seria inviável se utilizar de meios desenvolvidos a décadas atrás, até porque os problemas e necessidades computacionais que temos hoje provavelmente eram impensáveis, já em um curto período de tempo de 10 anos atrás.

E não menos justificável como a necessidade de atender diferentes propósitos e os avanços tecnológicos também pode-se destacar os interesses comercias.

As linguagens de programação podem ser convertidas ou traduzidas, em código de máquina por compilação ou ser interpretada. Mas em ambas ocorre a tradução do código fonte para código de máquina.

compilação se caracteriza por traduzir todo o código, para só depois executar. De forma que a versão compilada do programa é armazenada, e o programa pode ser executado um número indefinido de vezes sem que seja necessária nova compilação, o que compensa o tempo gasto na compilação.

Já uma linguagem interpretada pode ser considerada quando o programa é executado à medida que vai sendo traduzido, num processo de tradução de trechos seguidos de sua execução imediata. Os Programas interpretados são geralmente mais lentos do que os compilados, porém a vantagem destes é ser mais flexíveis, já que podem interagir com o ambiente mais facilmente, sem a necessidade de compilação do código.

Entretanto há diferentes classificações e paradigmas de programação a qual não permite dizer que uma linguagem de programação pode ser diferenciada apenas pela questão de ser compilada ou interpretada. Também é possível caracterizá-la pelos seguintes aspectos:

  • Estrutura de tipos (ex. fracamente tipada, fortemente tipada, …)
  • Grau de Abstração (ex. linguagem de baixo nível, linguagem de alto nível)
  • Geração (1ª geração, 2ª geração, 3ª geração, …)

Atualmente há uma grande alternância de posições, sobre quais são as linguagens de programação mais utilizadas. Para isto o site Tiobe disponibiliza uma avaliação atualizada e mensal que permite identificar a posição atual e progressão de cada linguagem de programação ao longo dos anos.

Categorized in: