Teacher feedback from 2017-2018: one teacher: "On page 5 the picture of the asterisk does not look like what their output should be, it should be all one color and all equally spaced. This really confused all students. On page 7 the rectangle block. My students were able to do this but most of them did not use loops here. This would be a great opportunity for them to get a better understand of the importance of loops and see if we can challenge them to write a loop or have them trace a rectangle on paper and see how many times they repeat. This is what I did with my students. Students had a lot of problems understanding parameters I did a mini lesson on this. This might be something we might want to go into more examples and explanations of. The quick blurb about the definition did not get them the understanding they needed." --MF, 3/6/19
PG: Why is "remix" a useful, or even appropriate term here? Edit? Modify?
It comes from Scratch by way of Selim. But Scratch uses it to mean modifying someone else's project, which is also what it means in its original context of music. -bh
molinillo
para hacer nuevos bloques asterisco
y póligono
.Puedes usar el procedimiento molinillo con propósito general para crear otro, un procedimiento más simple con propósito especial que realice un trabajo concreto.
pinwheel
para crear un bloque más especializado llamado asterisk
.
asterisk
con dos parámetros: uno es número de ramas y otro llamado largo de cada rama. Para recordar la forma de crear un nuevo bloque visitar: Unidad 1 Lab 2 Página 4: Creando un nuevo bloque.pinwheel
para que pueda dibujar correctamente un asterisco.polygon
que haga uso de pinwheel
con los valores apropiados para dibujar un polígono que reciba el número de lados y el largo del lado.En la página Unidad 1 Lab 2 Página 2: Haciendo que los programas hablen has aprendido acerca de la abstracción procedural: darle un nombre a un segmento de código (haciendo un bloque). De esta forma es posible hacer llamadas al bloque más de una vez en lugar de copiar y pegar el código cada nueva vez que se necesita.
Aquí se presenta otra clase de abstracción: nos damos cuenta que ambos asterisk
y polygon
son un tipo de molinillo. Procedemos a escribir un bloque pinwheel
más general que tome como entrada valores que puedan ser usados para hacer asteriscos, polígonos u otros diseños interesantes.
Est es un ejemplo de abstracción por generalización: observamos porciones de código que son muy parecidos para luego escribir un bloque que utilice ciertos parámetros para diferencias los diferentes casos o variaciones.
pinwheel
y analizas la forma en que se usa en polygon
, es posible darse cuenta que hay algunos pasos que no son necesarios realizarlos para este caso en particular. Escribe otra versión de polygon
que sea construido directamente de los bloques primitivos (move
, turn
y similares). ¿Qué tan simple lo puedes hacer?polygon
dibuje la figura correcta, no es de mayor importancia para el resto del proyecto conocer que hay dentro de él.
pinwheel
una última vez para crear un bloque círculo
que reciba como entrada el tamaño del radio.random
junto a los bloques set pen color
y set pen size
para dibujar una variedad de formas.