Linguagem de Programação é uma linguagem escrita e formal que especifica um conjunto de instruções e regras usadas para gerar programas (software). Um software pode ser desenvolvido para rodar em um computador, dispositivo móvel ou em qualquer equipamento que permita sua execução. Existem várias linguagens e elas servem para muitos propósitos.
Em linguagens compiladas como em C++ o programa escrito é processado por um compilador, que gera código de máquina que depois é executado pelo usuário no computador. Por exemplo, quando o código de um programa em C++ é escrito pelo programador possui instruções como declarações de variáveis, loops e etc. Quando termina de escrever o código o programador utiliza um compilador para converter o código escrito em um arquivo, por exemplo um arquivo .EXE, que contém instruções de máquina e que pode ser executado no Windows.
Exemplos de linguagens compiladas:
Em linguagens interpretadas como JavaScript o código escrito pelo programador não passa por nenhuma etapa de compilação ao fim do desenvolvimento. Quando o código é executado (por exemplo, quando o usuário clica em um botão em uma página Web) o interpretador entra em ação e converte aquela parte do código necessária em instrução de máquina que são processadas pelo computador do usuário.
Em linguagens de tipagem estática como em C++, C# ou Java os tipos das variáveis de um programa são explicitamente definidos no código e não podem ser modificados depois da sua declaração.
Exemplos de linguagens com tipagem estática:
Em linguagens de tipagem dinâmica como Javascript é possível declarar uma variável de um tipo e depois modifica-lo, por exemplo:
let value = 'Coutinho';
value = 123;
Exemplos de linguagens com tipagem dinâmica:
Programação Estruturada (PE) é um padrão ou paradigma de programação da engenharia de softwares, com ênfase em sequência, decisão e, iteração (sub-rotinas, laços de repetição, condicionais e, estruturas em bloco), criado no final de 1950 junto às linguagens ALGOL 58 e ALGOL 60.
É formada por três estruturas:
Exemplos de linguagens estruturadas:
Cobol
Diversas linguagens relevantes hoje (e.g. Cobol, PHP, Perl e Go) ainda utilizam o paradigma estruturado, embora possuam suporte para a orientação ao objeto e para outros paradigmas de programação.
Programação Orientada a Objetos (também conhecida pela sua sigla POO) é um modelo de análise, projeto e programação de software baseado na composição e interação entre diversas unidades chamadas de ‘objetos’. Os programas são arquitetados através de objetos que interagem entre si. Dentre as várias abordagens da POO, as baseadas em classes são as mais comuns: objetos são instâncias de classes, o que em geral também define o tipo do objeto. Cada classe determina o comportamento (definido nos métodos) e estados possíveis (atributos) de seus objetos, assim como o relacionamento com outros objetos.
Exemplos de linguagens orientada a objetos: