Entenda o que é linguagem de programação

Escrever um programa significa dar instruções a um computador sobre como ele deve lidar com os dados inseridos nele. E nós não podemos simplesmente dizer o que queremos usando linguagens como português ou inglês. O processamento dos computadores é um processo físico e matemático, que se concentra inteiramente na tarefa, sem realizar uma interpretação, como fazemos ao ler um texto, por exemplo. E é por esse motivo que a única linguagem que passa por um processador está escrita em números binários.

Linguagens de programação de primeira geração

Os primeiros computadores da história eram programados sem a ajuda de nenhuma linguagem de programação. Para escrever um programa, você precisaria pensar de forma extremamente abstrata e colocar o que fosse necessário em uma forma puramente matemática, geralmente código binário, em fitas magnéticas e cartões perfurados.

Essas linguagens, mais tarde denominadas como “linguagens de programação de primeira geração”, exigem muito trabalho e tornam interpretar códigos uma tarefa muito complicada. Se erros surgissem na execução, consertá-los levaria muito tempo, e implementar novas funções exigia reescrever completamente o programa. Todos os softwares escritos eram muito específicos a certos computadores e processadores, além da portabilidade ser praticamente impossível, já que as arquiteturas de cada tecnologia eram bastante diferentes entre si.

Linguagens de programação de segunda geração

A necessidade de maior facilidade na hora de escrever códigos forçou o desenvolvimento das chamadas linguagens de programação de segunda geração, ou “Assembly Languages”, que são basicamente programas que realizam uma “tradução” de uma linguagem menos abstrata para a linguagem de máquina.

A Linguagem COBOL

A maior parte das linguagens de programação dos anos 50 podia rodar somente em um tipo de computador. Portanto, se você precisasse mudar de máquina, teria de reescrever todo o programa, aumentando custos e quantidade de trabalho. Para resolver esse problema, especialistas em computação formaram um comitê em 1959 chamado Committee on Data System Languages, com o objetivo de desenvolver uma linguagem de programação que poderia ser usada em diferentes computadores. O resultado foi a Common Business-Oriented Language ou COBOL.

Para lidar com os diferentes tipos de máquinas, cada uma delas possuía seu próprio “tradutor” COBOL, mas o código-fonte poderia vir sempre da mesma fonte, facilitando o desenvolvimento e diminuindo muito os custos. Esse conceito foi chamado de Write once, run anywhere — Escreva uma vez, rode em qualquer lugar — e é o que dita o funcionamento da maior parte das linguagens de programação hoje em dia.

Linguagens de programação de terceira geração

E o desenvolvimento da linguagem COBOL dá início ao surgimento das primeiras linguagens de programação de terceira geração, como C, FORTRAN, Pascal e, futuramente, C++, C# e Java. Programas escritos nessas linguagens não podem ser lidos diretamente por computadores. Antes disso, eles precisam passar por outros programas “tradutores”, chamados de compiladores.

As “linguagens de programação de terceira geração” são chamadas de linguagem de alto-nível por serem muito mais próximas da linguagem humana e bem mais compreensíveis para nós. E a função do compilador é justamente traduzir essa linguagem em um código executável, levando em conta todas as ações necessárias para realizar a tarefa envolvida.

Vamos supor, por exemplo, que você deseja gravar o valor 10 em uma variável “b” na memória usando linguagem Java. Para isso, basta escrever no código “int b = 10”. Dizer isso para um computador não vai ajudar em absolutamente nada. Para que ele seja capaz de armazenar essas informações, você precisa que ele saiba o que fazer fisicamente para isso. O compilador, portanto, tem gravadas exatamente as instruções necessárias para essa tarefa ser executada.

Linguagens de programação de quarta geração

Tentando subir ainda mais na hierarquia de linguagens e ficando ainda mais próximas de nós, as linguagens de programação de quarta geração geralmente utilizam-se de interfaces gráficas e sistemas “arrasta e solta” para escrever um código de terceira geração de forma automática. Esse tipo de linguagem visa um resultado imediato e é bastante usado para prototipagem ou desenvolvimento de sistemas específicos.

O fato de grande parte do código de terceira geração por trás do programa ser escrito de forma automática acaba gerando várias linhas com comandos desnecessários, tornando necessário fazer um “pente fino” no código, otimizando-o. A diferença mais expressiva entre um código de terceira geração e um de quarta geração é que no primeiro caso, você escreve como realizar determinada tarefa, enquanto no segundo, você descreve o que você quer realizar. Dois exemplos dessa geração são a linguagem Visual Basic e Visual C++.

Linguagens de programação de quinta geração

Geralmente usadas em pesquisas relacionadas à inteligência artificial, as linguagens de programação de quinta geração não precisam de um algoritmo declarado que descreva como a tarefa deve ser feita, mas apenas qual o problema a ser solucionado, dispensando o trabalho de um programador. Linguagens do tipo têm a capacidade de “aprender”. Exemplos dessa geração são a linguagem Mercury e OPS5.

Escolher uma dessas linguagens para determinados projetos é uma tarefa importante. Gerações mais novas não implicam em melhores escolhas. Tudo depende da necessidade em pauta. Apesar disso, quase nenhum projeto é escrito diretamente em código de máquina ou linguagens de programação de segunda geração.

Venha para a People!

E aí, entendeu bem o que é uma linguagem de programação e já está pronto para começar a escrever seus próprios códigos? Então confira o curso de Programação C# Expert da People e acelere sua carreira!