** ¡Phineas y Ferb conquistando el mundo de la programación imperativa!**👧🏼
Tags: webdev, beginners, programming, tutorial
Published: 2024-05-09 15:51:05

¡Hola Chiquis! ‍👋🏻 En este post, nos adentraremos en el fascinante mundo de la programación imperativa. ¿Y qué tiene que ver esto con Phineas y Ferb?.

Imaginen a Phineas y Ferb como dos genios de la programación, utilizando su ingenio y creatividad para construir increíbles inventos… ¡con código imperativo! ⚙️ Cómo Phineas y Ferb podrían utilizar la programación imperativa para crear un carrito de helados automático, una montaña rusa emocionante y mucho más. ¡Ahí es donde la cosa se pone emocionante!⌨️

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kx206vg5qwxur966rqsa.jpg)

¿Qué es la programación imperativa? Imagínenlo como un mundo mágico donde ustedes son los hechiceros que dan órdenes a una computadora para que realice tareas increíbles. ✨ Con la programación imperativa, ustedes le dicen a la computadora paso a paso lo que debe hacer, utilizando variables como sus varitas mágicas, operadores como hechizos poderosos y funciones como conjuros secretos. En este mundo de programación, las variables son como sus herramientas, los operadores sus poderes y las funciones sus planos.

Construyendo un carrito de helados imperativo 🍧
Phineas, el líder del dúo, tiene una idea: ¡un carrito de helados automático! Con su fiel compañero Ferb a su lado, se lanzan a la programación. Primero, definen las variables: `sabores, precio y toppings`. Luego, utilizan operadores para asignar valores: `sabores = ["vainilla", "chocolate", "fresa"], precio = 3 y toppings = ["chispas", "crema", "frutos secos"].`

Para crear el menú, usan una función llamada `mostrarMenu()`. Dentro de ella, imprimen cada sabor con su precio y los toppings disponibles. El cliente hace su pedido usando otra función, `tomarPedido()`, que recibe el sabor, los toppings y calcula el total. Finalmente, la función `prepararHelado()` simula la preparación y entrega del pedido.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4eb4gjoore44b9kdwz96.jpg)

La montaña rusa imperativa 🎢
Ferb, siempre ingenioso, propone construir una montaña rusa imperativa. Utilizan variables para representar la altura, la velocidad y la posición del carrito. Los operadores controlan el movimiento: `altura += 10, velocidad *= 1.2 y posicion += velocidad`.

Para simular el recorrido, crean una función `simularViaje()`. Dentro de ella, repiten un bucle mientras la posición sea menor a la longitud de la pista. En cada iteración, ajustan la altura, la velocidad y la posición, imprimiendo la emoción del usuario según la intensidad del recorrido.

En el mundo de la programación, el paradigma imperativo es como decirle a tus amigos exactamente qué hacer en cada paso de un plan. Imagina que Phineas y Ferb están construyendo un parque de diversiones 🎡 en su patio trasero. Phineas es el cerebro detrás de las operaciones, dando instrucciones específicas, mientras que Ferb ejecuta las tareas meticulosamente.

Vamos al detalle 🦡
Phineas dice: "Primero, vamos a construir la montaña rusa. Necesitamos cimientos sólidos, así que Ferb, por favor, coloca los pilares de soporte uno por uno."

Esto es similar a cómo escribirías un programa en un lenguaje imperativo como C++:

```
#include <stdio.h>

void construirPilar() {
    printf("Pilar construido.\n");
}

int main() {
    for(int i = 0; i < 10; i++) {
        construirPilar(); // Construye 10 pilares para la montaña rusa
    }
    return 0;
}
```
Resultado en la consola:

```
Pilar construido.
Pilar construido.
...
(10 veces)
```

Luego, Phineas podría decir: "Ahora, conectemos los rieles de la montaña rusa. Asegúrate de que cada sección esté bien atornillada."

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/49lxu2ctw82wlirl2btp.jpg)

En programación, esto se traduciría en una serie de funciones que representan cada paso:

```
void atornillarSeccion() {
    printf("Sección atornillada.\n");
}
void construirRieles() {
    for(int i = 0; i < 20; i++) {
        atornillarSeccion(); // Atornilla 20 secciones de rieles
    }
}
```

Resultado en la consola:

```
Sección atornillada.
Sección atornillada.
...
(20 veces)
```

Al final del día, Phineas y Ferb tienen una montaña rusa completa, y tú tienes un programa que ejecuta una serie de tareas en orden, construyendo algo emocionante paso a paso.

Analogías imperativas 🛠️

- Las variables son como cajas donde guardan los ingredientes para sus inventos (datos).
- Los operadores son como las herramientas que usan para manipular esos ingredientes (operaciones matemáticas, comparación, etc.).
- Las funciones son como los planos detallados de sus inventos (conjuntos de instrucciones reutilizables).
- El flujo del programa es como la historia de sus aventuras, con un inicio, pasos intermedios y un final (secuencia de instrucciones).

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/juwfek82d6nq6m0hww34.jpg)

Imagina que estás en el mundo animado de Phineas y Ferb, ⚗️ donde cada día es una oportunidad para embarcarse en una nueva aventura o invento. En este universo, el paradigma imperativo de programación se asemeja a cómo Phineas y Ferb construyen sus ingeniosos proyectos: paso a paso, con instrucciones claras y precisas.

- Phineas: "Ferb, sé exactamente lo que vamos a hacer hoy. Vamos a construir un robot!"
- Ferb: Asiente con una sonrisa y saca el manual de instrucciones.
- En el paradigma imperativo, le das al computador una lista de comandos que debe seguir, muy parecido a cómo Phineas le dice a Ferb y a sus amigos qué hacer para construir su invento del día. Cada paso es una instrucción específica que debe ser seguida al pie de la letra para que el proyecto final funcione correctamente.

JavaScript

```
// Instrucciones para construir un robot (en pseudocódigo)
1. Ensamblar el torso.
2. Adjuntar los brazos al torso.
3. Instalar la unidad de procesamiento central en la cabeza.
4. Conectar la cabeza al torso.
5. Programar las funciones básicas del robot.
```
Al igual que en un episodio de Phineas y Ferb, donde cada acción lleva a la siguiente, en la programación imperativa cada comando lleva al siguiente, creando una secuencia lógica de eventos. Si Phineas olvida un paso, como ponerle baterías al robot, no funcionará, igual que si omites una línea de código.

JavaScript

```
// JavaScript: Un lenguaje de programación imperativo
function construirRobot() {
  var robot = {};
  robot.torso = 'ensamblado';
  robot.brazos = 'adjuntados al torso';
  robot.cabeza = 'conectada al torso';
  robot.cpu = 'unidad de procesamiento central instalada';
  robot.funcionesBasicas = 'programadas';
  return robot;
}
```

```
var robotDePhineasYFerb = construirRobot();
console.log(robotDePhineasYFerb);
```
Resultado en la consola:

```
{
  torso: 'ensamblado',
  brazos: 'adjuntados al torso',
  cabeza: 'conectada al torso',
  cpu: 'unidad de procesamiento central instalada',
  funcionesBasicas: 'programadas'
}
```
¡Y así como Phineas y Ferb terminan su proyecto justo a tiempo para que Candace no los atrape, tú has seguido las instrucciones al pie de la letra y has construido un robot funcional!

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c88wdv8s4h17rye82cez.jpg)

Al igual que Phineas y Ferb, la programación imperativa te permite crear soluciones ingeniosas y creativas. Con un poco de práctica, podrás dominar este paradigma y construir tus propios "inventos" digitales. ¡Manos a la obra y a conquistar el mundo de la programación!

🚀 ¿Te ha gustado? Comparte tu opinión.
Artículo completo, visita: https://lnkd.in/ewtCN2Mn
https://lnkd.in/eAjM_Smy 👩‍💻 https://lnkd.in/eKvu-BHe 
https://dev.to/orlidev ¡No te lo pierdas!

Referencias: 
Imágenes creadas con: Copilot (microsoft.com)

## 
#PorUnMillonDeAmigos #LinkedIn #Hiring #DesarrolloDeSoftware #Programacion #Networking #Tecnologia #Empleo #ParadigmaImperativo

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3erhqiw8x3jb1az94etb.jpg)

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fl2mungnrvdoiahp6s64.jpg)