# data[].attributes.body
Declarativo
-El desarrollador generalmente escribe código sobre lo que debe hacerse.
-La longitud del código es corta en general.
-La programación lógica y la programación funcional se encuadran en el paradigma declarativo.
-Difícil de depurar.

Imperativo
-El desarrollador escribe código sobre cómo se debe hacer algo.
-La longitud del código es generalmente grande.
-La programación estructurada y la programación procedimental se incluyen en el paradigma imperativo.

# data[].attributes.body
La programación imperativa hace referencia a la descripción de instrucciones de un programa para obtener una respuesta mientras que la programación declarativa se basa en mostrar el resultado final del programa en cuestión.

# data[].attributes.body
La programación imperativa se basa en cómo se realizan las cosas y sigue unos pasos marcados.
La programación declarativa da respuesta a lo que se quiere hacer

# data[].attributes.body
-Lenguaje Imperativo: sigue unos pasos marcados

-Lenguaje Declarativo: se enfoca en la respuesta a conseguir

# data[].attributes.body
Programación imperativa: se usan funciones codificadas paso a paso para resolver un problema. Está orientado a instrucciones.

Programación declarativa: se centra en describir un resultado deseado.

# data[].attributes.body
Programación Imperativa:
Se basa en COMO realizar las cosas
Objetivo: Describir como conseguir ejecutar

Programación Declarativa:
Responde a QUE ES lo que quieres hacer
Objetivo principal:
escribir el resultado deseado sin un dictado directo sobre cómo obtenerlo

# data[].attributes.body
Mientras que la programación imperativa se basa en la descripción de qué pasos hay que dar para obtener la solución de un problema, por su parte la declarativa se basa en describir cuál es la solución.

# data[].attributes.body
Paradigmas de la programación:
- Programación declarativa: Es un paradigma basado en el desarrollo de programas "declarando" un conjunto de condiciones, proposiciones, afirmaciones, restricciones, ecuaciones o transformaciones que describen un problema pero no las instrucciones necesarias para resolverlo. La solución se obtiene mediante mecanismos internos.
- Programación imperativa: Describe la programación en términos del estado del programa y sentencias que cambian dicho estado. Se le debe explicar a la computadora por medio de instrucciones detalladas "como hay que realizar la tarea".
DIFERENCIAS:
La programación declarativa describe el problema que se quiere solucionar, pero no las instrucciones necesarias para hacerlo, mientras que la programación imperativa se detallas las instrucciones necesarias para llegar a la solución.
Los programas declarativos incluyen menos detalles que sus contrapartidas imperativas.

# data[].attributes.body
La programación declarativa simplifica el programa.

La programación imperativa puede aumentar la complejidad del programa

# data[].attributes.body
Programación imperativa: se enfoca en una secuencia definida de operaciones, como unas "instrucciones". Ej. PhP

Programación declarativa: se enfoca en el resultado que hay que obtener, no tanto en el proceso

# data[].attributes.body
imperativo: es una secuencia de operaciones. Como PHP, Java o Phyton
declarativo: muestra el resultado.

# data[].attributes.body
-Imperativo : Describe los pasos necesarios y el orden en el que se resolvería el problema

-Declarativo: Define las condiciones o transformaciones que hay que realizar para resolver el problema pero no da las instrucciones necesarias

# data[].attributes.body
Declarativo: El desarrollador generalmente escribe código sobre lo que debe hacerse

Imperativo: El desarrollador escribe código sobre cómo se debe hacer algo

# data[].attributes.body
La programación imperativa, como su nombre indica, es un tipo de paradigma de programación que describe cómo se ejecuta el programa. Los desarrolladores están más preocupados por cómo obtener una respuesta paso a paso
La programación declarativa, como su nombre indica, es un tipo de paradigma de programación que describe qué programas se ejecutarán. Los desarrolladores están más preocupados por la respuesta que se recibe.

# data[].attributes.body
Paradigmas de programación:
- Imperativa: describe como se ejecuta el programa. Se preocupa de cómo obtener una respuesta paso a paso. Ejemplo: Java, C, Python
- Declarativa: especifica el resultado, no cómo lograrlo. Describe qué programas se utilizarán. Se preocupa de la respuesta que recibe. Ejemplo: SQL

# data[].attributes.body
La principal diferencia entre el lenguaje imperativo y el declarativo es que mientras el i mperativo muestra la secuencia de operaciones que hay que realizar, el declarativo especifica el resultado que se quiere obtener, pero no los pasos para llegar a el.

# data[].attributes.body
Un paradigma de programación se basa en el enfoque puesto para solventar un problema.
Entre los paradigmas de programación, se encuentran dos corrientes.

·Imperativo: Describe como se ejecuta el programa. Se busca una respuesta "paso a paso". El orden de ejecución es sumamente importante. (Ejemplos: Java y C++)

·Declarativo: Describe que programas necesitan ser ejecutados. Se busca una respuesta, sin focalizar en el lenguaje de programación con el que se ha obtenido, enfocándose principalmente en el resultado final.

# data[].attributes.body
•Investigar sobre las diferencias entre la programación imperativa y la programación declarativa.

# data[].attributes.body
-Imperativo: lenguaje de programación que 'crea'. Ej.: Python.
-Declarativo: lenguaje de programación que 'muestra'. Ej.: SQL.

# data[].attributes.body
Ejemplo de programación imperativa: Python

Ejemplo de programación declarativa: SQL

Sin embargo, como muchas personas que programan en SQL desean utilizar la misma sintaxis en Python, existen paquetes de funciones de manera que se puede escribir código de manera declarativa; por ejemplo, para filtrar una lista según una condición dada.

# data[].attributes.body
Los lenguajes de programación suelen tener 2 formas:

IMPERATIVO: es decir, como una secuencia de operaciones a realizar. Ejemplo: Javascript.

var people = [
  {
    name: 'Aang',
    age: 12,
  },
  {
    name: 'Iroh',
    age: 55,
  }
];


var kid_names = [];

for (let person of people) {
  if (person.age <= 12) {
    kid_names.push(person.name);
  }
}

console.log(kid_names);

DECLARATIVO: es decir, se especifica el resultado deseado, no cómo lograrlo. Ejemplo: SQL.

SELECT P1.ProductModelID,        P1.Name
FROM Production.ProductModel P1
WHERE ProductModelID IN(3, 4)