Diferença chave - programação declarativa vs programação imperativa
Programação declarativa e imperativa são dois paradigmas de programação comuns. A principal diferença entre a programação Declarativa e Imperativa é que a programação Declarativa se concentra no que o programa deve realizar, enquanto a programação Imperativa se concentra em como o programa deve atingir o resultado.
Um paradigma de programação é usado para classificar uma linguagem de programação dependendo do recurso. Também permite seguir um determinado padrão ou estilo para resolver um determinado problema.
CONTEÚDO
1. Visão geral e diferença-chave
2. O que é programação declarativa
3. O que é programação imperativa
4. Comparação lado a lado - Programação declarativa vs. programação imperativa na forma tabular
5. Resumo
O que é programação declarativa?
A programação declarativa pode ser explicada usando um cenário do mundo real. Suponha que o usuário precise verificar se há novos emails. Um método é habilitar as notificações da caixa de entrada. O usuário deve habilitar as notificações apenas uma vez, e cada vez que um novo e-mail chega, ele recebe uma notificação automaticamente. A programação declarativa é semelhante a isso. Ele fornece simplicidade. A programação declarativa expressa o que é o resultado necessário. Ele explica a lógica de um cálculo sem descrever o fluxo de controle.
Figura 01: Paradigmas de Programação
Um exemplo de programação declarativa é o seguinte. É multiplicar os números de um array por uma constante e armazená-los em um novo array.
números de var = [1,2,3];
var newnumbers = numbers.map (function (number) {
números de retorno * 5;
});
Console.log (newnumbers);
No exemplo acima, 'map' fornece instruções para iterar cada item na matriz e invocar a função de retorno de chamada para cada item e para armazenar o valor de retorno na nova matriz. Isso dará a saída 5,10,15. Neste programa, o objetivo principal de multiplicar os números por 5 é realizado usando a função de mapa. Ele percorrerá cada elemento e usará a função de retorno de chamada para calcular e armazenar os valores no novo array. Não é necessário fornecer todas as etapas. O foco principal é dado ao que deve ser alcançado.
O que é programação imperativa?
A programação imperativa pode ser explicada usando um cenário do mundo real como antes. Para verificar os novos e-mails, o usuário pode acessar o gmail e continuar atualizando a página para verificar se recebeu novos e-mails ou não. Isso é semelhante à programação imperativa. Ele explica todas as etapas envolvidas para alcançar o resultado. Ele usa instruções para expressar as mudanças no estado do programa.
Multiplicar os elementos da matriz por uma constante e armazenar os valores em uma nova matriz na programação imperativa é o seguinte.
números de var = [1,2,3];
var newnumbers =;
para (int i = 0; i <números.comprimento; i ++) {
newnumbers.push (números * 5);
}
Console.log (newnumbers);
No exemplo acima, os números são uma matriz. Ao percorrer o loop, cada número é multiplicado por 5 e adicionado à nova matriz de números. Após o final do loop, o conteúdo dos novos números será impresso, que são 5,10,15.
Pode-se observar que o estilo imperativo fornece todas as etapas para a realização da tarefa. Ele expressa como iterar através da matriz usando a variável de contador 'i', quantas vezes iterar antes de sair do loop e como inserir os valores calculados nas novas matrizes, etc.
O mesmo problema foi resolvido usando programação declarativa e imperativa.
Qual é a diferença entre programação declarativa e imperativa?
Artigo Diff meio antes da tabela
Programação Declarativa vs. Imperativa |
|
A programação declarativa é um paradigma de programação que expressa a lógica de uma computação sem descrever seu fluxo de controle. | A programação imperativa é um paradigma de programação que usa instruções que alteram o estado do programa. |
Foco principal | |
A programação declarativa se concentra no que o programa deve realizar. | A programação imperativa concentra-se em como o programa deve alcançar o resultado. |
Flexibilidade | |
A programação declarativa oferece menos flexibilidade. | A programação imperativa oferece mais flexibilidade. |
Complexidade | |
A programação declarativa simplifica o programa. | A programação imperativa pode aumentar a complexidade do programa. |
Categorização | |
A programação funcional, lógica e de consulta se enquadra na programação declarativa. | A programação procedural e orientada a objetos cai na programação imperativa. |
Resumo - Programação Declarativa vs Programação Imperativa
Este artigo discutiu a diferença entre dois paradigmas de programação principais, que são a programação declarativa e a programação imperativa. A diferença entre a programação declarativa e a Imperativa é que a Programação Declarativa se concentra no que o programa deve realizar, enquanto a Programação Imperativa se concentra em como o programa deve atingir o resultado.