Diferencia entre la programación declarativa e imperativa

Diferencia entre la programación declarativa e imperativa

Diferencia clave - Declarativo VS Imperativo Programación
 

La programación declarativa e imperativa son dos paradigmas de programación comunes. El diferencia clave Entre la programación declarativa e imperativa es que La programación declarativa se centra en lo que el programa debe lograr, mientras que la programación imperativa se centra en cómo el programa debe lograr el resultado.

Se utiliza un paradigma de programación para clasificar un lenguaje de programación dependiendo de la función. También permite seguir un determinado patrón o estilo para resolver un problema particular.

CONTENIDO

1. Descripción general y diferencia de claves
2. ¿Qué es la programación declarativa?
3. ¿Qué es la programación imperativa?
4. Comparación lado a lado: programación declarativa vs imperativa en forma tabular
5. Resumen

¿Qué es la programación declarativa??

La programación declarativa puede explicarse utilizando un escenario del mundo real. Suponga que el usuario necesita verificar nuevos correos electrónicos. Un método es habilitar las notificaciones de la bandeja de entrada. El usuario tiene que habilitar las notificaciones solo una vez, y cada vez que llega un nuevo correo electrónico, recibe una notificación automáticamente.  La programación declarativa es similar a la. Proporciona simplicidad. La programación declarativa expresa el resultado requerido es. Explica la lógica de un cálculo sin describir el flujo de control.

Figura 01: Paradigmas de programación

Un ejemplo de programación declarativa es el siguiente. Es multiplicar los números de una matriz por una constante y almacenarlos en una nueva matriz.

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

var newnumbers = números.map (función (número)

Números de retorno*5;

);

Consola.log (newnumbers);

En el ejemplo anterior, 'Maps' proporcione instrucciones para iterar cada elemento en la matriz e invocar la función de devolución de llamada para cada elemento y almacenar el valor de retorno a la nueva matriz. Esto le dará a la salida 5,10,15. En este programa, el objetivo principal de multiplicar los números por 5 se logra utilizando la función de mapa. Pasará por cada elemento y usará la función de devolución de llamada para calcular y almacenar los valores en la nueva matriz. No es necesario proporcionar todos los pasos. El enfoque principal se da a lo que se debe lograr.

¿Qué es la programación imperativa??

La programación imperativa puede explicarse utilizando un escenario del mundo real como antes. Para verificar los nuevos correos electrónicos, el usuario puede iniciar sesión en Gmail y seguir actualizando la página para verificar si recibió nuevos correos electrónicos o no. Esto es similar a la programación imperativa. Explica todos y cada uno de los pasos involucrados para lograr el resultado. Utiliza declaraciones para expresar los cambios en el estado del programa.

Multiplicar los elementos de matrices con una constante y almacenar los valores a una nueva matriz en la programación imperativa es el siguiente.

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

var newnumbers = [];

para (int i = 0; i< numbers.length ; i++)

perseguidores.Push (números [i]*5);

Consola.log (newnumbers);

En el ejemplo anterior, los números son una matriz. Al pasar por el bucle, cada número se multiplica por 5 y se agrega a la matriz neweMbers. Después del final del bucle, el contenido de los anuales se imprimirá que son 5,10,15.

Se puede observar que el estilo imperativo proporciona todos los pasos para lograr la tarea. Expresa cómo iterar a través de la matriz usando la variable de contador 'i', cuántas veces iterar antes de salir del bucle y cómo insertar los valores calculados en las nuevas matrices, etc.

El mismo problema se resolvió utilizando programación declarativa e imperativa.

¿Cuál es la diferencia entre la programación declarativa e imperativa??

Programación declarativa vs imperativa

La programación declarativa es un paradigma de programación que expresa la lógica de un cálculo sin describir su flujo de control. La programación imperativa es un paradigma de programación que utiliza declaraciones que cambian el estado del programa.
 Enfoque principal
La programación declarativa se centra en lo que debe lograr el programa. La programación imperativa se centra en cómo el programa debe lograr el resultado.
Flexibilidad
La programación declarativa proporciona menos flexibilidad. La programación imperativa proporciona más flexibilidad.
 Complejidad
La programación declarativa simplifica el programa. La programación imperativa puede aumentar la complejidad del programa.
Categorización
La programación funcional, lógica y de consultas cae en programación declarativa. La programación de procedimientos y orientados a objetos cae en una programación imperativa.

Resumen -Declarativo VS Imperativo Programación

Este artículo discutió la diferencia entre dos principales paradigmas de programación, que son programación declarativa e imperativa. La diferencia entre la programación declarativa e imperativa es que la programación declarativa se centra en lo que el programa debería lograr, mientras que la programación imperativa se centra en cómo el programa debe lograr el resultado.

Referencia:

1."Programación declarativa."Wikipedia, Fundación Wikimedia, 3 de abril. 2018. Disponible aquí  
2."Programación imperativa."Wikipedia, Fundación Wikimedia, 3 de abril. 2018. Disponible aquí  
3.Conferencia 17 - Imperativa vs Programación declarativa, Sam Nxstack, 11 de abril. 2017. Disponible aquí