Programação é o
processo de escrita, teste e manutenção de um programa de computador. O
programa é escrito em uma linguagem de programação, embora seja possível,
com alguma dificuldade, escrevê-lo diretamente em linguagem de máquina.
Diferentes partes de um programa podem ser escritas em diferentes linguagens.
Diferentes linguagens de programação funcionam
de diferentes modos. Por esse motivo, os programado respondem criar
programas muito diferentes para diferentes linguagens, muito embora,
teoricamente, a maioria das linguagens possa ser usada para criar qualquer
programa.
Linguagem de programação de alto nível é como se
chama, na Ciência da Computação de linguagens de programação,
uma linguagem com um nível de abstracção relativamente elevado, longe
do código de máquina e mais próximo à linguagem humana. Desse
modo, as linguagens de alto nível não estão diretamente relacionadas à
arquitetura do computador. O programador de uma linguagem de alto nível não
precisa conhecer características do processador, como instruções
e registadores. Essas características são abstraídas na linguagem de alto
nível.
Linguagem de
programação de baixo nível trata-se de uma linguagem de
programação que compreende as características da arquitetura do
computador. Assim, utiliza somente instruções do processador, para isso é
necessário conhecer os registradores da máquina. Nesse sentido, as linguagens
de baixo nível estão diretamente relacionadas com a arquitetura do computador.
Um exemplo é a linguagem Assembly (não Assembler)
que trabalha diretamente com os registadores do processadores, manipulando dados.
Um algoritmo é, num certo sentido, um
programa abstrato — dizendo de outra forma, um programa é um algoritmo
concretizado. No entanto, os programas são, à exceção dos menores, visualizados
mais facilmente como uma coleção de algoritmos menores combinados de um modo
único — da mesma forma que uma casa é construída a partir de componentes.
Dessa forma, um algoritmo é uma descrição
de como um computador pode ser levado a executar uma operação simples e
específica, como, por exemplo, uma ordenação. Um programa, por outro lado, é
uma entidade que na verdade implementa uma ou mais operações de forma que seja
útil para as pessoas.
O primeiro trabalho de linguagem de
programação foi criado por Ada Lovelace, grande amiga de Charles
Babbage. A linguagem de
programação ADA foi baptizada em homenagem a esta
primeira programadora.