Cabecera personalizada

El blog de Mikel Niño
Industria 4.0, Big Data Analytics, emprendimiento digital y nuevos modelos de negocio

Scratch: entorno y lenguaje para aprender los fundamentos de la programación

Scratch es un proyecto del grupo Lifelong Kindergarten del MIT Media Lab, iniciado en 2003, y que pone a nuestra disposición de manera gratuita una plataforma online (también con versión descargable para poder trabajar con ella offline) en la que podemos componer, de una manera visual y muy intuitiva, el código de programas simples principalmente enfocados a construir animaciones multimedia, con una clara orientación didáctica para poder asimilar unas nociones básicas de programación en un entorno menos textual y quizá más amigable para dichos primeros pasos. Para reforzar la aplicación de esta linea didáctica hacia el público preescolar, recientemente han lanzado la versión ScratchJr, una aplicación gratuita para iPad en la que se ha rediseñado el interfaz para ajustarlo mejor a las habilidades de su público objetivo.

La utilización de la plataforma Scratch es muy intuitiva, donde además podemos ayudarnos de un breve tutorial que nos guía paso a paso en la creación de nuestro primer proyecto en Scratch. La clave de esta plataforma es que todos los constructores principales de un programa (sentencias condicionales, bucles, eventos), así como varias instrucciones específicas para el manejo de animaciones multimedia (desplazamientos de los objetos, activación de sonidos, modificación de colores), están disponibles en nuestro entorno como elementos visuales (pequeñas piezas de puzzle como las que aparecen en la imagen que ilustra esta entrada) que vamos arrastrando y ensamblando en nuestra zona de programa.

Estas piezas aparecen agrupadas por categoría, de manera que, por ejemplo, si queremos incluir una instrucción que desplace un objeto buscaremos la pieza correspondiente en la categoría "Movimiento", si queremos añadirle una condición a verificar o un bucle de repetición las buscaremos en la categoría "Control", o si queremos que el programa empiece a ejecutarse ante determinados eventos externos (al apretar una tecla) la buscaremos en la categoría "Eventos". Con este método de "arrastrar y soltar" iremos ensamblando todas las piezas-instrucciones y construiremos una rutina que quedará asociada a uno de los objetos (o "sprites", usando la jerga propia de la creación de gráficos por ordenador) que añadimos en nuestro lienzo, pudiendo añadir varios objetos cada uno con su propia rutina de programación que controla su comportamiento.

El resultado final, como decía, es un entorno de uso sencillo y que facilita la asimilación de conceptos básicos para construir un programa de ordenador, dándole un enfoque visual que facilita la comprensión de cómo se ejecuta un programa y qué secuencia se sigue para identificar qué instrucciones se ejecutan y cuáles no (por ejemplo es muy aparente cómo las instrucciones condicionales o de repetición "rodean" a las piezas que tienen dentro, para dar a entender dónde empieza y dónde termina el conjunto de instrucciones que se van a ejecutar). Comparándolo con otros entornos para fines similares de los que hemos hablado anteriormente en el blog, como por ejemplo Processing, Scratch puede ofrecer una alternativa menos árida que el enfoque puramente textual de construcción de código, lo cual facilita su utilización para públicos infantiles (al que especialmente se enfocan iniciativas como la citada de ScratchJr) y donde también el enfoque de combinar la animación de diferentes personajes modificando colores y sonidos puede dar mucho juego.

No hay comentarios:

Publicar un comentario