Cómo explicarle a un niño de 6 años los Closures de Javascript

Recordando una clase de programación que tuve en la escuela, donde me era complicado explicar el tema a alguien que no sabía programación, llegué a esta respuesta en StackOverflow de como una gran imaginación puede ayudar a explicar cosas complicadas hasta a niños pequeños, les dejo la respuesta:

Había una vez:

Una princesa…

function princess() {

Ella vivía en un mundo maravilloso lleno de aventuras. Ahí conoció a un carismático príncipe, montó sobre un unicornio todo el mundo, combatió dragones, platicó con animales y realizó muchas otras cosas fantásticas.

    var adventures = [];

    function princeCharming() { /* ... */ }

    var unicorn = { /* ... */ },
        dragons = [ /* ... */ ],
        squirrel = "Hello!";

Pero ella tiene que regresar siempre a su aburrido mundo lleno de rutinas y “adultos”.

    return {

Y ella casi siempre les platicaba sobre sus fantásticas aventuras como princesa.

        story: function() {
              return adventures[adventures.length - 1];
        }
    };
}

Pero todo lo que ellos ven es a una pequeña niña…

var littleGirl = princess();

… que cuenta historias sobre magia y fantasía.

littleGirl.story();

Y aunque los adultos conozcan a las verdaderas princesas, ellos nunca creerán en los unicornios y dragones por que ellos nunca los podrán ver. Los adultos dicen que ellos solo existen dentro de la imaginación de la niña.

Pero nosotros conocemos la verdad: que la pequeña niña con la princesa dentro…

… es realmente una princesa con una pequeña niña dentro de ella.

 

Author: Miguel González López

Software Engineer

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.