Creando un bloque personalizado

PG: Lighter edit. Focus on kids' use of structure they've already learned, /using/ what they know. Is this the time for our video to have yet a new background?

En esta página vas a crear un nuevo bloquegossip response para hacer que el programa presente una conversación más natural.
gossip2 reporting 'Guess what. Gabrielle helped Señora'

  1. Si aún no has abierto tu proyecto U1L2-Gossip, ahora es el momento.
  2. Crea un nuevo bloque llamado: gossip response
It occurs to me that gossip response is a slightly misleading name. Shouldn't it be response header or something? It doesn't report a complete response. --bh

I think it's ok. If you tell me some gossip, my response might be "Oh, wow!" "Yeah? Well, I heard...", etc. and that's what this block offers. --MF, 7/21/19

Creando un nuevo bloque

    image of 'Make a block' dialog box with palette with 10 menus (Motion, Looks, Pen, Sound, Lists, Control, Sensing, Operation, Variables, Other) labeled 'Choose a color (a palette)'; a text box labeled 'Type a title for your block.'; three block shape options (puzzle-shaped/'Command', oval/'Reporter', and hexagonal/'Predicate') labeled 'Select a shape.'; two radio boxes (for all sprites, which is checked, and for this sprite only, which is not checked) with no label; and two buttons (OK and Cancel) labeled 'Click OK.'
  1. Para crear un nuevo bloque tienes tres opciones: La primera es haciendo clic en el botón botón crear bloque que se encuentra al final de la paleta de funciones en el lado izquierdo de la pantalla. La segunda opción es haciendo clic en el botón + en la esquina superior derecha de la paleta de funciones (como se muestra en la figura más abajo). La tercera opción es hacer clic derecho (o control-clic en Mac) en un espacio vacío en el área de trabajo y luego seleccionando la opción "crear bloque..." (ver toma de pantalla abajo).
    plus sign atop palette make a block option
  2. Debes seleccionar un color de acuerdo a la categoría de la funcionalidad.
  3. Debes escribir el título del bloque: gossip response.
  4. Debes elegir la forma del bloque y hacer clic en "Aceptar". Para este bloque, elige la forma de óvalo titulada Reportero ya que lo que se busca es reportar un valor (la respuesta seleccionada) hacia otro bloque.

Luego de seleccionar el bloque reportero, el editor de bloques se abre con un bloque report ya incorporado a un bloque tipo sombrero. Cualquier entrada que se coloque al nuevo bloque report será el valor a transmitir.

Codificando el nuevo bloque

  1. En el área de trabajo se deben arrastrar los bloques necesarios. Para el ejemplo, debes utilizar los bloques the list block y item(1) of (). Debes utilizar el valor reportado por list como entrada para el bloque item.
  2. Une los bloques. El bloque de código structure será igual al código dentro de los bloques who, does what, and who2.
  3. Ingresa los valores correspondientes.
    • Para este proyecto, haz clic en la flecha que apunta hacia abajo en el bloque item para cambiar "1" a "aleatorio".
    • Luego debes llenar el bloque list con diferentes frases como: "¿Adivina qué?," "Yo escuché," or "¡A quién le importa!"
  4. Haz clic en "Aceptar" cuando estes satisfecho con los valores ingresados.
: Procedimientos, Reporteros, y Comandos
AAP-3.A.1, AAP-3.A.2

Un procedimiento es una secuencia de instrucciones que puede aceptar valores o acciones de entrada y puede reportar un valor como resultado. Los procedimientos pueden recibir un nombre para distinguirlos. Algunos lenguajes de programación los pueden llamar también métodos o funciones. A continuación se presentan dos tipos de procedimientos que ya has visto en Snap!:

Depuración

    Pair Programming Swap
  1. Prueba el nuevo bloque personalizado gossip response haciendo clic sobre él en varias oportunidades. Debe comportarse de la misma forma que lo hacen los bloques who, does what, y who2.
  2. Depura cualquier problema antes de seguir adelante.
  3. Usa el nuevo bloque: Edita el código de gossip 2 e inserta el bloque gossip response en lugar del texto "Ahh, pero...."
    gossip 2 {
    report (join (gossip response) ( ) (who 2) ( ) (does what) ( ) (who) )
}
  4. Realiza pruebas y depura el código de gossip 2.
  5. Luego prueba el programa completo haciendo clic en la secuencia D varias veces, y luego arregla cualquier incidencia detectada.
  6. Ahora es tiempo de guardar tu trabajo