Diferença entre programação declarativa e imperativa

Índice:

Diferença entre programação declarativa e imperativa
Diferença entre programação declarativa e imperativa

Vídeo: Diferença entre programação declarativa e imperativa

Vídeo: Diferença entre programação declarativa e imperativa
Vídeo: Aula 4 - React - Programação Imperativa vs Declarativa 2024, Novembro
Anonim

Key Difference – 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 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 problema específico.

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 e-mails. Um método é habilitar as notificações da caixa de entrada. O usuário tem que habilitar as notificações apenas uma vez, e cada vez que chega um novo e-mail, ele recebe uma notificação automaticamente. A programação declarativa é semelhante a isso. Proporciona simplicidade. A programação declarativa expressa qual é o resultado requerido. Explica a lógica de uma computação sem descrever o fluxo de controle.

Diferença entre programação declarativa e imperativa
Diferença entre programação declarativa e imperativa

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.

var números=[1, 2, 3];

var newnumbers=numbers.map(function(number){

retorna números5;

});

Console.log(newnumbers);

No exemplo acima, ‘map’ fornece instruções para iterar cada item no array e invocar a função de retorno de chamada para cada item e armazenar o valor de retorno no novo array. 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 map. Ele passará por 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 fazer login no gmail e continuar atualizando a página para verificar se recebeu novos e-mails ou não. Isso é semelhante à programação imperativa. Ele explica cada passo envolvido para alcançar o resultado. Ele usa instruções para expressar as mudanças no estado do programa.

Multiplicar os elementos arrays com uma constante e armazenar os valores em um novo array na programação imperativa é o seguinte.

var números=[1, 2, 3];

var newnumbers=;

for(int i=0; i< números.comprimento; i++) {

newnumbers.push(numbers5);

}

Console.log(newnumbers);

No exemplo acima, os números são uma matriz. Ao passar pelo loop, cada número é multiplicado por 5 e adicionado ao array newnumbers. Após o final do loop, o conteúdo dos newnumbers será impresso, que são 5, 10, 15.

Pode-se observar que o estilo imperativo fornece todos os passos para a realização da tarefa. Ele expressa como iterar pelo array usando a variável de contador 'i', quantas vezes iterar antes de sair do loop e como inserir os valores calculados nos novos arrays etc.

O mesmo problema foi resolvido usando programação declarativa e imperativa.

Qual é a diferença entre programação declarativa e imperativa?

Programação Declarativa vs Programação Imperativa

Programação declarativa é um paradigma de programação que expressa a lógica de uma computação sem descrever seu fluxo de controle. Programação imperativa é um paradigma de programação que usa instruções que alteram o estado do programa.
Foco Principal
A programação declarativa foca no que o programa deve realizar. A programação imperativa foca 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
Funcional, Lógica, Programação de consulta se enquadra na programação declarativa. Procedural e programação orientada a objetos se enquadra na programação imperativa.

Resumo – Programação Declarativa x Imperativa

Este artigo discutiu a diferença entre dois grandes paradigmas de programação, que são a programação declarativa e a programação imperativa. A diferença entre 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.

Recomendado: