Enseñanza de Ciencias de la Computación en la Escuela

46
Enseñanza de Ciencias de la Computación en la Escuela Guía de Actividades Prácticas

Transcript of Enseñanza de Ciencias de la Computación en la Escuela

Page 1: Enseñanza de Ciencias de la Computación en la Escuela

Enseñanza de Ciencias de la Computación en la Escuela

Guía de Actividades Prácticas

Page 2: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

1

Contenidos

¿Por qué enseñar Ciencias de la Computación en la escuela?..................................2 Orientaciones y estructura de los materiales………………………………………..……2 Actividad 1: Las animaciones y los programas (Fundamental)………………………...4 Actividad 2: Definición de la historia y primera escena (Fundamental)………………..7 Actividad 3: Momentos principales de su animación (Complementaria)…………….10 Actividad 4: Mover Objetos y Personajes (Fundamental)……………………………..13 Actividad 5: Comentarios y Parámetros (Complementaria)…………………………...16 Actividad 6: Dummy Object (Complementaria)…………………………………………19 Actividad 7: Variables (Fundamental)…………………………………………………....21 Actividad 8: Repaso de Variable y Condicionales (Fundamental)……………………24 Actividad 9: Métodos y Parámetros (Complementaria)………………………………..27 Actividad 10: Repaso Condicional y Números Aleatorios (Complementaria)……….31 Actividad 11: Ciclos (Fundamental)………………………………………………………33 Actividad 12: Ciclos (Complementaria)………………………………………………….36 Actividad 13: Eventos (Fundamental)…………………………………………………....38 Actividad 14: Producciones Motivadoras (Complementaria)………………………….40

Enseñanza de Ciencias de la Computación en la Escuela. Guía de Actividades Prácticas por UNC++ se distribuye bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 2.5 Argentina.

Page 3: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

2

¿Por qué enseñar Ciencias de la Computación en la escuela?

Vivimos en un mundo tecnológicamente intensivo. Estamos rodeados de aplicaciones e instrumentos controlados por computadoras. Los teléfonos, los lavarropas, las heladeras; pero también los aviones, las cirugías, los sistemas de seguridad; todo es asistido por computadoras. Sin embargo, a pesar de que operamos y utilizamos estas herramientas diariamente y que han mejorado nuestra calidad y nuestras condiciones de vida, no sabemos cómo funcionan, qué hay detrás de las respuestas automatizadas, ni mucho menos cómo podemos mejorar o crear nuevas herramientas que satisfagan nuestras necesidades. Las Ciencias de la Computación constituyen una disciplina que estudia y desarrolla una idea de cómo resolver un problema utilizando un lenguaje que una máquina pueda entender, y de esta manera ejecutar una tarea para tal fin. Para desarrollar gran parte de la automatización de tareas es necesario programar, esto es, producir una serie de instrucciones que una máquina pueda ejecutar para resolver una tarea. Siendo que gran parte de nuestros productos culturales o tecnológicos se desarrollan con la computación, podemos decir que “es la técnica cultural de nuestro tiempo”1, y sin embargo, las escuelas en su mayoría no la están enseñando. Si queremos, como país, sumarnos a ser desarrolladores de tecnología y no solo consumidores “hay que enseñar ciencias de la computación”2 en las instituciones escolares. Esto permitiría incluir educativamente a muchos jóvenes posibilitando potenciar cualquier rama del saber u oficio. Con el objetivo de promover la enseñanza de las Ciencias de la Computación en la escuela, en las próximas páginas se despliegan actividades elaboradas por el equipo de UNC++, para la enseñanza de conceptos centrales de las Ciencias de la Computación en general y de programación en particular, a través de un recurso fascinante para los jóvenes, como son las animaciones y los juegos. Estas actividades tendrán una función clave en la posibilidad de que docentes sin formación específica en computación, puedan abordar la enseñanza de la programación en sus aulas. Uno de los objetivos centrales de estas actividades será mostrar que la programación es una disciplina que todos podemos aprender y desarrollar.

Orientaciones y estructura de los materiales

Estos materiales ofrecen un curso introductorio de programación de animaciones utilizando la plataforma Alice3. Hacer una animación requiere tanto de habilidades computacionales, como de creatividad para contar una historia, ambos abordados en las actividades. El tiempo estimado para cada actividad es de 60 minutos, pero la duración real depende de cada grupo de estudiantes. Estos materiales pueden ser utilizados tanto en primaria como en secundaria y no es necesario que el docente ni los alumnos tengan conocimientos previos de Ciencias de la Computación ya que se trata de un curso introductorio. Las actividades están elaboradas siguiendo el enfoque del aprendizaje por descubrimiento. El objetivo principal es que los alumnos desarrollen competencias de resolución de problemas o desafíos, explorando y descubriendo conceptos propios de las Ciencias de la Computación. Las actividades no pretenden ser un libreto a seguir por los docentes, sino que ofrecen estrategias para que los alumnos puedan aprender ciencias de la computación descubriendo ellos mismos patrones, regularidades, comandos, entre otros, desde su propia intuición por ser usuarios activos de tecnología. Los conceptos se introducen en forma espiralada: se amplían y recuperan a lo largo de las clases. Asumimos que los jóvenes han desarrollado saberes del uso de computadoras. Saben qué son las animaciones, por ejemplo, y usan motores de búsqueda todo el tiempo. Las actividades

Page 4: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

3

están orientadas a recuperar esas intuiciones y saberes para posibilitar el aprendizaje formalizado de las ciencias de la computación además de potenciar competencias muy presentes en la disciplina tales como observación, trabajo en grupo, etc. Cada una de las actividades está dividida en los siguientes momentos (su orden y frecuencia de aparición varían de una clase a otra):

Motivación y Recuperación de ideas previas: este momento está orientado en desafiar y generar interés en los alumnos por utilizar un concepto nuevo de ciencias de la computación recuperando conocimientos previos.

Demostración y análisis: consiste en una breve introducción al concepto que puede resolver el desafío planteado. Intencionalmente el docente no resuelve todo el desafío, dejando lugar para la exploración y el descubrimiento de diferentes instancias de aplicación del concepto.

Exploración y Producción: los estudiantes exploran la plataforma buscando las herramientas que, combinadas con el concepto nuevo, puedan resolver el desafío. Esta es una competencia importante ligada al modo en que trabajan los especialistas en Ciencias de la Computación.

Reflexión: durante el último segmento de la clase, los alumnos comparten sus producciones, reflexionan y analizan sus avances apoyándose en una grilla que les permite hacer foco en “cómo les está yendo” y “qué necesitan hacer para mejorar”.

A lo largo de las actividades se explicitan las intenciones didácticas de cada una de las estrategias con notas a los docentes. Algunas actividades están diseñadas para complementar y apoyar las actividades centrales y están señaladas como “complementarias”. Por último, en cuanto a la infraestructura tecnológica necesaria para la ejecución de las actividades, sería valioso contar con un proyector y conexión a Internet para acceder a los videos tutoriales. Si esto último no es posible, el docente puede grabar con antelación estos materiales.

Page 5: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

4

Actividad 1: Las animaciones y los programas

(Fundamental)

Resumen y Propósito de la Actividad: El propósito de esta actividad es mostrar que las Ciencias de la Computación constituyen una disciplina accesible, la cual todos podemos aprender. Esta primera actividad se enfoca en que los alumnos se familiaricen con animaciones y se interioricen con conceptos fundamentales de las Ciencias de la Computación como lo son el código y los objetos. Conceptos de Ciencias de la Computación:

Objetos Código

Referencias y Recursos:

Clase 0 y clase 1 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Animaciones de ejemplo:

Corto de pixar Scrat-Gone Nutty. Compartido en http://www.youtube.com por Jaguar 2117.

Video del juego Super Mario Galaxy 2. Compartido en http://www.youtube.com por NewHope.

Manual de Alice. Guido Vargas y Liceo de Heredia (2011). Páginas 1 a 10. Tutorial Básico de Alice (2008) Universidad del Rey Juan Carlos. Primera Parte.

1. Motivación y recuperación de conocimientos previos:

Iniciamos la actividad indagando sobre los conocimientos previos de los alumnos4. Podemos preguntarles:

¿Qué animaciones o videojuegos conocen? ¿Juegan a videojuegos? ¿A qué videojuegos suelen jugar?

A continuación les presentamos una animación de ejemplo: “Scrat Gone Nutty”. Una vez finalizada la proyección, preguntamos:

¿Qué son las animaciones? ¿Cómo se hacen? ¿Quiénes las hacen?

También, les mostramos un videojuego: “Super Mario Galaxy 2”. Y les preguntamos:

¿Qué es un videojuego? ¿Es diferente de una animación?5

¿Cómo se hacen? ¿Ustedes podrían hacer uno? ¿Qué elementos encontramos en una animación o en un videojuego?

¿En qué lugar suceden los hechos? ¿Quienes intervienen? ¿Qué cosas suceden?6

Page 6: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

5

Con estas proyecciones y sus respectivas preguntas, queremos que los alumnos puedan dar cuenta de los elementos que se encuentran en una animación o en un videojuegos, del lugar donde suceden los hechos, de quienes intervienen, de que cosas suceden, etc.7

2. Demostración:

Utilizando un proyector, presentamos la herramienta Alice y sus ventanas principales: Les contamos a los chicos que Alice es una plataforma que permite incorporar los elementos centrales de una animación y retomamos lo que los alumnos identificaron en el momento anterior.

Libreto: El texto de una película de cine u obra de teatro en donde se indica qué dice y hace cada actor. En una animación, el libreto es el código programado, por eso en Alice el libreto estará en el panel del editor de código, en donde se escribirá de manera muy precisa cómo se desarrollarán las acciones que le den vida a la animación y/o juego. Personajes: Son los actores. En muchos lenguajes de programación, como por ejemplo en Alice, se llaman objetos a aquellos personajes o cosas que pueden realizar acciones, es decir, que pueden ser programadas. En Alice, podrás seleccionar tus personajes en la Galería de Objetos. Luego, podrás visualizar los personajes en el panel árbol de objetos. Escenario: Es el lugar en donde ocurren las escenas. En Alice hay distintas opciones de escenario y se llaman Mundos. Posiciones de cámara: Ubicación de la cámara para privilegiar determinados ángulos. Escenas: Un fragmento del libreto que tiene un principio y un fin, es decir, tiene una cierta coherencia.

3. Exploración y Producción:

Enunciamos el proyecto: A lo largo de estas clases ustedes desarrollarán en grupos una animación por computadora utilizando la plataforma Alice. Como vimos, toda animación cuenta principalmente una historia utilizando recursos audiovisuales. Ustedes deberán inventar una historia para contar8.

En esta primera actividad, invitamos a los alumnos a explorar la herramienta y especialmente la galería de objetos y mundos que pueden inspirar sus historias. Pueden elegir un escenario y personajes (mundo y objeto).

4. Reflexión:

Hoy aprendimos qué era una animación y sus elementos principales. Descubrieron el programa Alice y comenzaron a elegir personajes y mundos.

Ahora que han explorado la herramienta Alice, reflexionamos con una grilla sobre el propio trabajo o el de los compañeros. Una alternativa es intercambiar computadoras entre los grupos y que cada grupo evalúe a otro. Otra posibilidad, es realizar una autoevaluación.

Page 7: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

6

Grilla de reflexión entre pares o autorreflexión:

Criterio Instala y abre el programa.

Participa en la discusión de la clase y agrega algunos detalles (personajes, escenario, objetos) a su animación.

Participa en la discusión de la clase. Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras materias. Hace preguntas. Explora la plataforma y descubre por sí solo una nueva función.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Como recurso complementario a esta actividad 1, podemos comenzar a introducir nociones sobre abstracción y pensamiento computacional a través de la siguiente actividad unplugged (sin uso de la computadora) de code.org, que encontrarán en http://learn.code.org/unplugged/unplug2-es-ES.pdf, aún si no realizan esta actividad en el curso recomendamos su lectura para encontrar diversos ejemplos y modos de presentar los conceptos computacionales.

Page 8: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

7

Actividad 2: Definición de la historia y primera escena

(Fundamental)

Resumen y Propósito de la Actividad: En esta actividad, los alumnos comienzan a armar su primera escena, dándoles comportamiento a sus personajes. Continúan explorando la herramienta Alice. Conceptos de Ciencias de la Computación:

Secuencia Línea de Código Objeto Atributos

Conceptos de Animaciones:

Modificación de imágenes 3D.

Referencias y Recursos:

Clase 1 y clase 2 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Manual de Alice. Guido Vargas y Liceo de Heredia (2011). Páginas 1 a 10. Tutorial Básico de Alice (2008) Universidad del Rey Juan Carlos. Primera Parte.

1. Motivación y Recuperación de ideas previas:

Les preguntamos si se acuerdan de los elementos de una animación y su relación con un programa de computación. Recordamos que el libreto de una obra de teatro es parecido al código en una animación o programa de computación.9

2. Exploración y Producción:

Les presentamos la siguiente consigna: Para comenzar a pensar la animación, deberán reunirse en grupos. Cada integrante tendrá un rol (tal como se estila en la producción de una película o animación):

1. Autor del libreto: elegirá un TEMA (la historia la desarrollarán en la próxima actividad).

2. Director de imágenes: elegirá un ESCENARIO y sus componentes. 3. Director de Casting: elegirá DOS PERSONAJES.

Entre los integrantes del grupo deberán armar su primera escena, incorporando en su Animación el ESCENARIO y los PERSONAJES.

Page 9: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

8

Los estudiantes trabajan en grupos, tomando decisiones respecto del tema, escenario y personajes y los incorporan en su animación10. Luego preguntamos:

¿Cómo piensan ustedes que se modifica la posición en la escena? ¿Cómo se les da tamaño a

los personajes o distintos elementos del escenario (es decir cómo se agranda o achica un personaje o elemento)?

Damos a los alumnos tiempo de exploración de la herramienta. Vemos si descubren nuevas funcionalidades y lograron los objetivos planteados en las preguntas. Es posible que algunos alumnos hayan visto los comandos “Girar objetos izquierda y derecha”, “Cambiar de tamaño”, entre otros; los cuales se encuentran en el sección de diseño, representados por iconos con forma de caras. Mostramos algunos de ellos y como debemos utilizarlos. Una vez que terminamos de posicionar a los objetos, presionando el botón “HECHO”, se vuelve a los menús centrales. Es importante recalcar, que siempre podemos volver al menú de diseño de escenario y personajes, por lo tanto, podemos modificarlos siempre que lo deseemos.

3. Demostración

Invitamos a un grupo a que muestre su trabajo. (Si es problema conectar la computadora del alumno, el docente puede rápidamente elegir el escenario y los dos personajes). Creada esta escena, el docente les pide que observen el sector de Edición de Código y pregunta:

¿Qué muestra esta ventana?11 ¿Cómo piensan que se mueve un personaje?

Si algún alumno sabe como hacerlo, se lo invita al frente a que lo demuestre a sus compañeros. Si muchos alumnos saben como hacerlo, se proponen grupos de trabajo liderados por aquellos alumnos12. Una vez que los alumnos estén familiarizados de que manera agregar instrucciones, les mostramos como podemos ver el efecto que las mismas producen de manera inmediata. Para eso les mostramos cómo ejecutar las instrucciones que han arrastrado. Luego, les proponemos que introduzcan dos instrucciones distintas, y ejecuten para ver su animación. Una vez que finalicen de observar las mismas, les pedimos que cambien el orden de las instrucciones y que ejecuten la animación. Les preguntamos:

¿Las animaciones fueron las mismas? En el caso en que no sean iguales, ¿en qué cambiaron? Cómo pudieron observar las animaciones no son las mismas. Cambia el orden en el cual se ejecutan las instrucciones. Esto se debe a que Alice ejecuta las acciones de manera secuencial, es decir respeta el orden de las instrucciones.

4. Exploración y Producción:

Les damos tiempo a los alumnos para que empiecen a programar la animación o videojuego que hayan pensado en el primer momento de Exploración y Producción de esta actividad.

Page 10: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

9

5. Reflexión:

Utilizando la rúbrica los alumnos analizan si han podido establecer el tema, escenario, personajes y si han incorporado movimientos.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Construye un buen escenario, pero no hay ninguna acción en la ejecución.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre una nueva función. Logra dar una o más instrucciones a su animación.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 11: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

10

Actividad 3: Momentos principales de su animación

(Complementaria)

Resumen y Propósito de la Actividad: La labor de los programadores reside principalmente en escribir, a través de un lenguaje, instrucciones para una máquina, pero también tienen que poner en juego su creatividad, ya sea para contar una historia o resolver un problema de manera original. Sin historia y sin soluciones creativas la computación no es útil y no es atractiva, por tal motivo, el propósito de esta actividad es orientar a los alumnos en el desarrollo de una historia para que puedan elaborar su propia animación. Competencias transversales:

Diseñar una historia coherente. Identificar sub-partes de una historia (introducción, nudo, desenlace). Trabajo colaborativo.

Referencias y Recursos:

Video compilado de las distintas producciones de los chicos de Dale Aceptar 2012:

Videojuegos:

Great Minds (Desafio Dale Aceptar)- Delivering Pizza. Compartido en http://www.youtube.com por GreatMindsDA.

Dale Aceptar Juego Guitar Argento. Compartido en http://www.youtube.com por Canal de Marcos39112479.

Animaciones:

Bien Seguros- animación para Dale Aceptar. Compartido en http://www.youtube.com por Francisco Sayas.

Candy- Desafío Dale Aceptar. Compartido en http://www.youtube.com por Juli 0015.

Conciencia droga by Esteban. Compartido en http://www.youtube.com por –Esteban555.

1. Motivación y Recuperación de ideas previas:

Se puede realizar un sondeo entre todos de las temáticas elegidas para las animaciones. O bien, para que todos tengan la posibilidad de hablar y escuchar, podemos proponer que se reúnan dos grupos y que cada grupo le cuente al otro de qué se trata su animación y los avances sobre la misma, y el grupo que recibe la información de sus compañeros, presenten el tema de los mismos en una ronda general. Preguntamos también si encontraron mundos y personajes interesantes para su animación en la galería de Alice.

2. Demostración:

Les ofrecemos a los chicos algunas animaciones y videojuegos de Dale Aceptar 2012 realizadas por estudiantes secundarios. El propósito de este segmento es mostrarles las producciones que se pueden realizar con la herramienta Alice y que han elaborado chicos de

Page 12: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

11

su misma edad13. En algún sentido la herramienta abre posibilidades creativas y limita el producto final también. Esto es algo que los programadores deben evaluar constantemente. Se muestran algunos videos sugeridos en Recursos y se identifican tres momentos centrales de las animaciones: introducción, nudo y desenlace.

3. Exploración y Producción:

Teniendo en cuenta que cada integrante tiene saberes para aportar, y considerando los aportes de los videos de Dale Aceptar, así como los escenarios (Mundos) y los personajes que posee la plataforma Alice que ya vieron, se les propone la siguiente consigna: En grupo de tres integrantes deberán avanzar en su animación. Para ello tendrán que recordar el tema, escenario y los personajes que habían elegido anteriormente. Deberán identificar tres momentos centrales de su animación:

Introducción: se presenta el/los personajes principales y su entorno. Nudo: se presenta un conflicto, problema o situación. Desenlace: se muestra el resultado final (puede superar la situación o no).

Luego de identificar estos tres momentos y guiados por las preguntas que realizamos a continuación, deben escribir un resumen de la trama de su animación.

1. ¿A qué lugares concurre usualmente su personaje? ¿Su animación ocurre en una época actual o pasada?

2. ¿Qué quiere hacer su personaje? o ¿qué cosas le pasan a su personaje? 3. ¿Qué obstáculos encuentra el personaje? ¿Qué situaciones problemáticas se les

presentan? 4. ¿Cómo resuelve la situación?

Pueden apoyarse en los personajes, mundos y objetos que ofrece Alice para refinar la trama.

4. Reflexión:

Les pedimos a los alumnos que intercambien sus historias con otro grupo. Cada grupo deberá hacer dos comentarios positivos de la trama y una sugerencia14 Se podrá opinar por ejemplo sobre: Si la historia tiene principio y fin. Si el escenario es adecuado para contar la historia. Si los personajes son interesantes.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Se avanza en el desarrollo de la historia, identificando los momentos en la historia. Escribió el resumen de la trama.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Como recurso complementario a esta actividad, podemos seguir trabajando sobre las nociones de abstracción y creatividad principales en el pensamiento computacional a través de la siguiente actividad unplugged (sin uso de la computadora) de code.org, que encontrarán en

Page 13: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

12

http://studio.code.org/unplugged/unplug8-es-ES.pdf, aún si no realizan esta actividad en el curso recomendamos su lectura para encontrar diversos ejemplos y modos de presentar los conceptos computacionales.

Page 14: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

13

Actividad 4: Mover Objetos y Personajes

(Fundamental)

Resumen y Propósito de la Actividad: Con esta actividad avanzaremos en el desarrollo de una Animación utilizando la plataforma Alice. En particular, aprenderemos el manejo de subpartes, como realizar acciones simultáneas, mover objetos juntos. Un objetivo principal de este encuentro es ayudar a que los alumnos exploren la herramienta de forma independiente para desarrollar el aprendizaje autónomo de las herramientas de software. Conceptos de Computación:

Atributos de un objeto. Relación entre clases (part-of). Concurrencia. Uso de métodos.

Referencias y Recursos:

Animación prearmada que los docentes han enviado con antelación a los chicos para que la bajen en sus computadoras. https://docs.google.com/file/d/0B2QQSF12CmdMQmk1WU5aT3hzRXc/edit?pli=1.

La misma animación prearmada anterior, con el problema resuelto. https://docs.google.com/file/d/0B2QQSF12CmdMVTNfbk41RmZYSTA/edit?pli=1

Clase 3, clase 4 y clase 9 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Manual de Alice Guido Vargas y Liceo de Heredia (2011). Páginas 10 a 20. Tutorial Básico de Alice (2008) Universidad del Rey Juan Carlos. Segunda Parte.

1. Motivación y Recuperación de ideas previas:

Para realizar un repaso de lo que se viene trabajando, les contamos a los alumnos que: En cada clase dos grupos mostrarán los avances de sus animaciones, así como lo hacen los programadores cuando elaboran sus programas. El resto de clase deberá dar un feedback respetuoso y constructivo a sus compañeros15.

Luego preguntamos:

¿Cómo se programan acciones en Alice? ¿Cómo se dan instrucciones en secuencia?

¿Cómo hacemos para que un personaje se mueva? Si varios alumnos descubren cómo se programan las acciones en Alice, les pedimos que les expliquen a sus compañeros. En el caso en que no haya sido posible, les explicamos cómo realizarlo. Se recuperan las intuiciones de los alumnos para introducir los métodos Mover y Mover hacia (Move y Move to). Los métodos son fundamentales en el mundo de la computación, nos

Page 15: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

14

permiten pensar los problemas de una manera más abstracta. Los mismos representan una acción compleja, compuesta por varias acciones. Consideremos el método “Cocinar un Lemon Pie”. El mismo está compuesto por muchas acciones o instrucciones, como lo son batir, mezclar ingredientes, hacer la crema, hornear, entre otras. Las instrucciones enunciadas anteriormente son parte una acción más abstracta: el método que llamamos Cocinar un Lemon Pie. Teniendo en cuenta que nuestros personajes en Alice son objetos en el mundo de la computación, decimos que las acciones que pueden realizar los personajes son lo que en computación llamamos métodos. Basándonos en los conceptos objeto, atributo y método que hemos ido aprendiendo en las actividades, podemos ver un ejemplo cotidiano en el cual se reflejan los mismos. Hoy en día es común tener una cuenta en Facebook, la cual no solo tiene información nuestra sino también que nos permite realizar diferentes acciones. Por ende nuestra cuenta es un objeto, la cual cuenta con atributos cómo nuestra foto de perfil, nombre, edad y con métodos que nos permiten agregar nuevos amigos, subir fotos, entre otros.

¿Podrías pensar vos en otros objetos, sus atributos y sus métodos?

2. Demostración:

Tomando como base la animación utilizada en la actividad anterior, mostramos mover objetos y cómo dar y re-ordenar instrucciones en el sector de Edición de Código. O bien, podemos hacer uso de alguna animación pre-armada de las disponibles en los recursos o alguna otra diseñada por el docente. Podría consistir de un escenario en el mar, con un barco, un robot y a lo lejos una roca. Inicialmente, el robot está dentro del barco parado. Queremos hacer que se siente en el barco y luego que se dirija hacia la roca. Se les pregunta a los alumnos:

¿Cómo les parece que podríamos hacer para que parezca que el robot se siente?

Recuperando las intervenciones de los alumnos expresamos que necesitan de tres acciones:

1. Mover hacia abajo a la persona, 2. Girar su pierna izquierda 90 grados, 3. Girar su pierna derecha 90 grados.

Entonces, se ve en Alice cómo seleccionar una subparte de un personaje. Un personaje es un objeto y su pierna también lo es; la pierna es un objeto que es una subparte (part-of) del objeto personaje. Al observar la animación generada a través de las tres acciones en ese orden, vemos que no es nada realista que se siente de esa manera (tal como aparece en la clase 9 de Dale Aceptar, http://www.daleaceptar.gob.ar/cms/clases/clase-9/). Queremos que simultáneamente el robot se mueva hacia abajo y levante sus piernas:

¿Cómo podemos hacer para que esas tres acciones estén en simultáneo?

Como podemos ver, necesitamos que los movimientos se realicen al mismo tiempo, es decir, de manera concurrente, para que el proceso de sentarse sea real. En nuestra vida, la mayoría de nuestras actividades son realizadas de manera concurrente. Un ejemplo cotidiano es caminar. Para caminar debemos mover nuestras dos piernas al mismo tiempo y de manera sincronizada. Cuando arrancamos el auto o hacemos algún cambio de marcha, precisamos mover al mismo tiempo nuestros dos pies para poder realizarlo de manera correcta.

Page 16: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

15

3. Exploración y Producción:

Les ofrecemos a los alumnos unos minutos para que exploren16 la herramienta Alice hasta encontrar la manera de hacer acciones concurrentes. Pueden ayudarse con la clase 9 de Dale Aceptar. Al concluir los minutos destinados para esta acción preguntamos qué grupos han logrado realizar la tarea. Algunas situaciones posibles:

Si sólo uno o dos grupos ha completado la tarea, los invitamos a que pasen al frente a mostrarles a sus compañeros cómo lo han hecho.

Si varios grupos han completado la tarea les proponemos que colaboren con aquellos grupos que presentan dificultades.

Si todos los grupos han completado la tarea, cada grupo le muestra a su grupo vecino cómo lo han hecho. El grupo vecino deberá observar la producción y realizar un comentario respetuoso y constructivo.

En el caso que ningún grupo haya podido descubrir como realizar las acciones de manera simultánea, explicamos cómo se realiza. Para ello, necesitamos usar hacer a la vez, y poner dentro del cuerpo de la misma las instrucciones que queremos que se ejecuten al mismo tiempo, y no de manera secuencial.

Luego les damos tiempo a los alumnos para que trabajen en sus producciones implementando lo aprendido. .

4. Reflexión:

Grilla de Reflexión

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy. Logra realizar las acciones, pero no se hacen a la vez.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Si otra persona ve tu código puede entenderlo. Logra realizar las acciones en simultáneo , utilizando hacer a la vez.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 17: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

16

Actividad 5: Comentarios y Parámetros

(Complementaria)

Resumen y Propósito de la Actividad: Con esta actividad trabajaremos con parámetros para personalizar los métodos de los objetos y con comentarios para organizar y facilitar la lectura del código escrito. Además, insertaremos sonidos para lograr un producto multimedia. Conceptos de Computación que se abordarán en esta clase:

Uso de Parámetros. Comentarios (de Código). Multimedia.

Conceptos de Animaciones que se abordarán en esta clase:

Poner vehículo.

Referencias y Recursos:

Clase 4, clase 5 y clase 9 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Animación prearmada que los docentes han enviado con antelación a los chicos para

que la bajen en sus computadoras. (https://www.dropbox.com/s/8jw6szr1r6x9kgp/ejemplo1_clase2.a2w)

La misma animación prearmada anterior, con el problema resuelto. (https://www.dropbox.com/s/w8zkb78803wpr9l/ejemplo1_clase2_realizado.a2w)

1. Motivación y Recuperación de ideas previas:

Se les pide a dos grupos que muestren los avances de su animación de acuerdo a los conceptos trabajados en la anterior actividad:

¿Cómo han implementado las instrucciones en secuencia? ¿Han podido llevar a cabo diversas acciones en simultáneo?

2. Demostración:

Retomando la animación de ejemplo de la Actividad 4 (escenario con mar, un barco, robot y a lo lejos una roca), exploramos otros movimientos.

Ahora queremos que el barco con el robot se dirija hacia la roca. ¿Cómo podemos hacerlo?

A partir de las sugerencias de los alumnos ofrecemos el método “Mover” del objeto “Barco”. La clase observa que el barco navega solo y el robot queda sentado sobre el mar. Entonces preguntamos:

¿Por qué creen que el robot se queda flotando sentada en el mar mientras que se debería ir con el barco?

Page 18: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

17

¿Cómo piensan que podemos solucionar esto?17

3. Exploración y Producción

Los alumnos deberán encontrar la forma de que dos objetos se muevan en conjunto. Además preguntamos si queremos que el barco haga algún tipo de sonido cuando arranque.

¿Cómo podemos realizar esto?

¿Cómo piensan que podemos agregarles sonidos a nuestro barco?

Luego de un tiempo de exploración abordamos las dos preguntas realizadas anteriormente. Preguntamos primero por como hacer que ambos objetos se muevan en conjunto. Es posible que tengamos las siguientes respuestas:

Recuperando lo aprendido en la actividad, los alumnos pueden haber utilizado la estructura hacer a la vez. Les mostramos que es una alternativa válida pero cada vez que queramos mover de alguna forma el barco, deberemos agregar una instrucción de movimiento similar para el robot, lo cual puede hacer bastante largo el programa.

En el caso en que varios alumnos hayan descubierto el método poner vehículo a, les pedimos que recorran los diferentes grupos y expliquen a los compañeros que no han podido realizarlo.

Sí ninguno de los alumnos pudo descubrir el método poner vehículo a, les explicamos cómo utilizarlo. Recordemos que es un método con el cual cuentan los objetos para generar un vínculo “invisible” con otro objeto. De esta manera basándonos en el ejemplo del robot y el barco, si al robot le ponemos como vehículo el barco, cada movimiento que haga el barco lo hará el robot.

Para poder agregar sonidos a los objetos, los mismos cuentan con un método llamado “agregar sonido” el cual tiene como parámetro un archivo de sonido (de formato wav). Mostramos cómo modificar detalles o parámetros de algunas acciones, como por ejemplo la duración del movimiento del barco hacia la roca. El código del programa se empieza hacer cada vez más largo. Podemos dividir el código en distintas escenas y encabezar cada escena con un comentario (de código) que explique brevemente la escena. Con los comentarios podemos explicar que sucede en el código que escribimos. Una buena práctica de programación es ir comentando nuestro código, ya que de esta manera tanto nosotros como otras personas que quieran leer el mismo, van a poder comprender lo que hemos escrito. En Alice los comentarios se escriben utilizando //. Luego, dejamos que a los alumnos trabajar en sus producciones. Hacemos hincapié en que utilicen los conceptos y herramientas vistas en la clase: piensen qué movimientos y sonidos podrían hacer sus objetos y acciones en las cuales consideren necesarias. Utilicen comentarios para hacer el código legible tanto para ustedes como para quienes lo lean a futuro.18

4. Reflexión:

A modo de cierre de la actividad, conversamos sobre situaciones en donde es necesario insertar comentarios19 en el código. Los comentarios son muy importantes ya que permiten ir explicando lo que sucede en diferentes sectores del código para que el programa sea más fácil de entender y de modificar.

Page 19: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

18

Solicitamos que observen el sector de Edición de Código y preguntamos:

¿Qué pasaría si alguien quisiera cambiar alguna partecita de la animación? ¿Cómo tendría que hacer? ¿Cómo sabe qué línea debe modificar?

Recuperando las ideas de los alumnos, mostramos cómo poner comentarios en el código y cómo modificar detalles de algunas acciones, como por ejemplo la duración del movimiento del barco hacia la roca. Preguntamos si saben para qué sirven los siguientes elementos del código:

El “punto (.)” en computación se utiliza para indicar un atributo o método del objeto. Con el mismo podemos obtener o cambiar el valor de algún atributo del objeto, método.

Los parámetros permiten modificar métodos, como por ejemplo, cambiar la velocidad del método mover. Con el botón “más (+)” ubicado a lo largo de la línea de código, podemos observar todos los parámetros de los métodos.

“Poner vehículo a” es un método que permite conectar a dos objetos y que hace que cuando uno se mueva, se mueva también el otro.

Para finalizar la actividad, cada grupo ofrecerá su animación a otro grupo para que el mismo sea valorado por medio de la grilla de reflexión.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios para hacer comprensible instrucciones que puedan ser poco entendibles. Si otra persona ve tu código puede entenderlo. Logra incorporar la función poner vehículo.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 20: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

19

Actividad 6: Dummy Object

(Complementaria)

Resumen y Propósito de la Actividad: Esta actividad tiene como propósito que los estudiantes conozcan y utilicen la función de dummy object, para ello se les presentará un juego con la intención de hacer cambiar la historia tradicional del coyote y el correcaminos. La función dummy object es un elemento fundamental para el diseño de animaciones; por lo tanto, es imprescindible para que los alumnos puedan generar producciones más realistas y de manera más sencilla. Conceptos de Animaciones:

Dummy Object.

Referencias y Recursos:

Clase 2 y clase 6 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar [1] Animación prearmada para explicar dummy objects

(https://docs.google.com/file/d/0B2QQSF12CmdMT0VCVEpSRnp4OEk/edit?pli=1) [2] Animación con ejercicio de dummy objects realizado.

(https://docs.google.com/file/d/0B2QQSF12CmdMaU1jLWRzT1REVGc/edit?pli=1) Imagen de “marcas en el suelo” (para ejemplificar dummy objects) en el teatro.

(http://www.cubaescena.cult.cu/doc/Sandra_Ramy_Detras.jpg)

1. Motivación:

Mostramos a los alumnos la animación de ejemplo ([1]). En la misma tenemos al “correcaminos” y al “coyote”. Como nos cansamos de que siempre le salga todo mal al pobre coyote, ahora queremos que un bloque de metal le caiga encima al correcaminos. Para que esto sea posible, necesitamos que el correcaminos caminé hacia el lugar donde va a caer el bloque de metal, y luego debemos mover hacia abajo al bloque20.

¿Se animan a intentar completar la animación?

Dejamos un tiempo para que los alumnos, explorando la herramienta, intenten realizar la animación de ejemplo. Los invitamos a que puedan poner dummy objects en su animaciones, podemos preguntarles ¿En qué situaciones de su animación necesitan dummy objects?

2. Demostración y análisis:

Preguntamos cómo les fue con la actividad propuesta21. Es posible que los alumnos hayan tratado de resolver la misma utilizando los métodos mover o mover hacia. Esto les debe haber tomado mucho trabajo e instrucciones, ya que al no contar con algún elemento que indique el lugar exacto a donde debemos de mover el correcaminos, debemos de probar muchísimas veces cuantos metros moverlo, hacerlo girar la cantidad de grados correctos, entre otras. En el caso en que alguno de ellos haya podido encontrar la función de dummy object22 y utilizar la misma de manera correcta, usamos su animación para explicar el concepto. Si no, mostramos cómo hacer una “marca” en el suelo.

Page 21: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

20

Recordemos que para crear los dummy object, debemos dirigirnos al sector de diseño, crear un objeto cualquiera y moverlo en la posición donde queremos dejar la marca en el suelo. Luego hacemos click en el botón más opciones y, seleccionando el objeto que creamos para que ocupará la posición de la futura marca, hacemos click en el botón soltar muñeco. Esto creará en el árbol de objetos una nueva carpeta llamada Dummy Objects, con el dummy object recientemente creado. Una buena práctica de programación es cambiarle el nombre al mismo, para identificarlo con la posición que representa. Esto es recomendable porque seguramente vamos a necesitar crear muchos objetos dummy, y para poder identificarlos fácilmente, precisamos de nombres que los representen. Podemos usar la analogía con las marcas de tiza que se utilizan en un escenario de una obra de teatro. Para reforzar esta analogía se les muestra una imagen en el proyector a los estudiantes de como se realizan estas marcas en teatro: http://www.cubaescena.cult.cu/doc/Sandra_Ramy_Detras.jpg

3. Exploración y Producción:

Con esta nueva función se facilitará el movimiento de los personajes, simplificando el trabajo en nuestras animaciones. Les proponemos a los alumnos que trabajen en sus propias producciones, utilizando los dummy object.

4. Reflexión:

Para finalizar la actividad, proponemos el intercambio de las producciones para que cada grupo, por medio de la grilla de reflexión, realice una valoración sobre el trabajo realizado por sus compañeros.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy. Logra mover el objeto hacia algún lugar esperado pero no utiliza la función aprendida en la clase.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Logra incorporar la función dummy object para mover un objeto hacia un punto exacto.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitás un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 22: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

21

Actividad 7: Variables

(Fundamental)

Resumen y Propósito de la Actividad: En esta actividad los alumnos deberán simular el rol de una empresa y allí se introducirán las funciones de variable y tipos de datos. El objetivo de esta actividad es presentar a los alumnos uno de los conceptos fundamentales y básicos de las Ciencias de la Computación: las variables. Conceptos de Ciencias de la Computación:

Variable. Tipos de datos. Input.

Referencias y Recursos:

Clase 12 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Animación con la actividad resuelta.

(https://drive.google.com/file/d/0BzAcw_TtkrrxNXk3cGhvcl84S1k/edit?pli=1) Proyector.

1. Motivación y recuperación de conocimientos previos:

Creamos rápidamente una animación con tres personajes cualquiera. Les planteamos a los chicos la siguiente consigna:

“Ustedes están haciendo su animación para una empresa de entretenimiento. Pero en un estudio realizado recientemente los usuarios han expresado que les gustaría poder

personalizar más los juegos y animaciones. Por lo tanto la empresa les pide, que se le pregunte al usuario el nombre.

Este nombre lo tienen que repetir los otros tres personajes de la escena. Sin embargo queremos que la pregunta se haga una sola vez. ”

Luego de plantear la consigna se muestra la función preguntar al usuario por cadena de caracteres. Recordemos que para poder utilizar la misma debemos tener seleccionado, en el árbol de objetos, el objeto mundo. Luego seleccionamos, en el sector de la pantalla que se encuentra justo debajo del árbol de objetos, la pestaña llamada funciones (functions). Buscamos en la misma la función llamada preguntar al usuario por cadena de caracteres y la arrastramos al sector de edición de código. Luego deberemos completar con la pregunta que le queremos realizar al usuario. Incorporando la función preguntar al usuario por cadena de caracteres logramos hacer que los personajes pregunten por el nombre de los participantes. Ahora resta que los alumnos hagan que los personajes repitan los nombres.

2. Exploración y Producción:

Dejamos a los alumnos que exploren la herramienta para que ellos mismos descubran cómo hacer que los tres personajes repitan el nombre sin tener que realizar tres veces la pregunta. El objetivo es hacerle recordar de alguna manera a la computadora el nombre del usuario para poder después usarlo cuando los personajes hablan.

Page 23: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

22

3. Demostración y análisis:

Probablemente en el grupo no se haya encontrado la manera de realizar la función solicitada usando variables, pero sí se instaló la necesidad de saber como resolverlo. Entonces, luego de la instancia de exploración explicamos qué es una variable. Creando una variable podemos almacenar información en la memoria de la computadora. La memoria de una computadora es como un armario enorme con millones de cajones. Y cada uno de estos cajones es una variable. Tanto los cajones de un armario como las variables, sirven para guardar diferentes elementos. Los armarios que tenemos en nuestra pieza tienen pocos cajones, por lo que es fácil acordarnos qué guardamos en cada uno. Pero como la memoria que tiene millones de cajones, nos es imposible recordar dónde guardamos cada cosa, por lo que es una idea excelente poner nombres a las variables relacionados con lo que guardemos en la misma. Las variables forman parte de actividades cotidianas de nuestra vida. Cada vez que vamos al supermercado a comprar nos encontramos con ellas. ¿Cuándo? Cuando vamos a la caja a pagar los productos que compramos, la caja registradora nos muestra el total. Ese total es una variable que se va modificando a medida que vamos registrando los productos. Del mismo modo, cuando el programa pregunta al usuario su nombre, lo debemos guardar en una variable y luego cada personaje usa el contenido de la variable para decir nuestro nombre. Por lo tanto en vez de hacer varias preguntas al usuario por su nombre, realizamos la misma pregunta una única vez y guardamos la respuesta del usuario en la variable. Una buena práctica de programación es poner un nombre representativo a las variables. Cuando hablamos de representativo hacemos referencia a que se relacionen con el contenido de la variable. En este caso como en la variable guardamos nombres de usuario, un buen nombre sería: nombre_de_usuario. Notemos que para el nombre de la variable, cuando el mismo consta de varias palabras utilizamos el guión bajo ("_") para separar las mismas en vez de un espacio vacío. Esto se debe ya que la mayoría de los lenguajes de programación no permiten que los nombres de variables estén separados por espacios. Recalquemos que en Alice es posible dar nombre a las variables utilizando espacios, pero recomendamos utilizar guiones bajos como buena práctica de programación. Observemos que en Alice, para crear una variable, tenemos la pestaña crear nueva variable en el sector de edición de código. Cuando creamos la variable, debemos de poner un nombre a la misma y seleccionar el tipo de la misma. Esto es porque necesita saber si vamos a guardar un número, o una cadena de caracteres, o un objeto. Una vez creada la misma, para poder utilizarla debemos arrastrarla al sector de edición de código. Les pedimos a los alumnos que trabajen en su animación. Es importante proponerles que piensen en las diferentes partes de sus producciones donde necesiten variables23.

4. Reflexión:

Para finalizar la actividad, cada grupo ofrecerá su animación a otro grupo para que el mismo sea valorado por medio de la grilla de reflexión.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy. La animación

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Logra incorporar una variable a su animación, por

Page 24: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

23

le pregunta algo al usuario pero no lo repite.

ejemplo la animación le pregunta algo al usuario, y luego lo repite más de un personaje.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 25: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

24

Actividad 8: Repaso de Variable y Condicionales

(Fundamental)

Resumen y Propósito de la Actividad: El objetivo de esta actividad es trabajar sobre el aprendizaje de dos conceptos fundamentales y básicos de las Ciencias de la Computación, variable y condicional. Reforzamos el concepto de variable visto en una de las actividades anteriores, y se introduce el concepto de condicional. Los condicionales son muy importantes en Computación. Precisamos de tomar decisiones todo el tiempo (como en la vida real), y con ellos podemos llevar a cabo esta tarea. Conceptos de Ciencias de la Computación:

Condicional Variable. Tipo de datos.

Referencias y Recursos:

Clase 13 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Animación con la actividad resuelta

(https://drive.google.com/file/d/0BzAcw_TtkrrxLWtyWG1teXBQUUE/edit?pli=1) Recurso complementario: Clase Unplugged Nº 10 de code.com

(http://studio.code.org/unplugged/unplug6-es-ES.pdf)

1. Motivación y recuperación de ideas previas:

Basándonos en el ejercicio de la Actividad 7 donde precisamos de una variable para poder guardar la respuesta de la pregunta al usuario: ¿Cómo es tu nombre?, y poder utilizar el valor del mismo varias veces sin necesidad de repetir la pregunta, planteamos la siguiente actividad:

Agreguemos rápidamente un personaje cualquiera en una nueva animación. Queremos que un personaje pregunte al usuario por su edad, y guarde el valor de la misma en una variable. ¿Se

animan a hacerlo?

2. Exploración y Producción:

Les damos a los alumnos tiempo para que puedan investigar y realizar la actividad pedida. Deberán de crear una variable de tipo número, a la cual tienen que asignarle el valor de la función preguntar usuario por número24. Una vez que hayan finalizado les planteamos la siguiente problemática:

Queremos que el personaje diga la edad que tenemos, es decir usando el método decir.

¿Qué sucede cuando queremos que diga el contenido de la variable? Como podemos ver, Alice no nos permite asignar la variable edad en el método decir. Esto se debe a que decir toma como parámetro una cadena de caracteres, mientras que la variable edad es de tipo número. Esto genera un error de tipos. Una vez finalizado el ejercicio anterior planteamos la siguiente actividad:

Page 26: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

25

Queremos extender nuestra animación para que el personaje a partir de nuestra edad pueda decir si somos menores o mayores de edad. En el caso en que seamos mayores nos diga “Sos

mayor” o si somos menores “Sos menor”. ¿Se animan a hacerlo? Damos unos minutos para que los alumnos exploren la herramienta con la intención de que resuelvan la tarea pedida25.

3. Demostración y análisis:

Si algún alumno logró realizarlo le pedimos que nos ayude a explicar cómo hacerlo al resto de los compañeros26. Necesitamos que el personaje, dependiendo si somos mayores o menores de edad diga cosas distintas. Para poder llevar a cabo esto podemos ver que primero, debemos comparar el valor que hemos guardado en la variable edad con la edad que define la mayoría de edad (supongamos que 18 años). En el caso en que el valor de la variable edad sea mayor o igual a 18 (edad >= 18), entonces nuestro personaje deberá decir “Eres mayor”. En caso contrario dirá “Eres menor”. Por lo tanto, debemos tomar una decisión dependiendo de la edad de la persona. Esto se denomina condicional. Como podemos ver, lo que diga el personaje elegido dependerá de una condición que debemos definir. Una posible condición sería “edad es mayor o igual a 18”, lo cual en Alice y la mayoría de los lenguajes de programación se representa como edad >= 18. Es importante destacar que esta no es la única condición válida para resolver el problema. También podemos pensar en la condición contraria a “edad es mayor o igual a 18”, es decir “edad es menor a 18”. Luego, sin importar la condición que elijamos, en el caso en que se cumple la misma, nuestro personaje dice uno de los mensajes, mientras que si no se cumple dice el mensaje restante. Tenemos una condición para realizar una acción u otra. Esto podemos hacerlo en Alice con la sentencia “Si/Si no” (O “If/Else”). Para utilizarla arrastramos la misma al sector de edición de código. Inicialmente, nos pide que pongamos una condición inicial que puede ser el valor booleano true o false. Elegimos cualquiera de los dos. Después reemplazamos la condición que hayamos elegido inicialmente por la que nosotros necesitemos, por lo tanto, debemos de llenar el cuerpo de la estructura “Si/Si no”. Como recurso complementario a esta actividad, luego de realizarla, podemos reforzar la enseñanza del concepto de condicional, con las siguientes actividades unplugged (sin uso de la computadora) de code.org: http://studio.code.org/s/20-hour/stage/10/puzzle/1 y http://studio.code.org/unplugged/unplug6-es-ES.pdf. Aún si no realizan esta actividad en el curso recomendamos su lectura para encontrar diversos ejemplos y modos de explicar el condicional, en la propuesta presentada en el video se enseña el condicional a través de un juego de cartas.

4. Reflexión:

Para finalizar la actividad, cada grupo ofrecerá su animación a otro grupo para que el mismo sea valorado por medio de la grilla de reflexión.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer

Page 27: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

26

trabajadas hoy.

comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Logra incorporar un condicional a su animación.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 28: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

27

Actividad 9: Métodos y Parámetros

(Complementaria)

Resumen y Propósito de la Actividad: Esta actividad tiene como propósito reforzar dos conceptos principales de las Ciencias de la Computación que ya han sido trabajados anteriormente, ellos son Método (Actividad 4) y Parámetro (Actividad 5). Conceptos de Ciencias de la Computación:

Métodos. Parámetros. Concatenación de cadenas de caracteres.

Referencias y Recursos:

Clase 3, clase 4 y clase 9 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Actividad 4 y 5 de la guía. Recurso complementario: Clase Unplugged Nº 12 de code.com

(http://studio.code.org/unplugged/unplug7-es-ES.pdf)

1. Motivación y recuperación de ideas previas:

Comenzamos la clase solicitando a los alumnos que coloquen tres personajes en el escenario. Les contamos que queremos que los tres personajes nos saluden de una forma particular. Se deben mover hacia adelante, decir “Hola” seguido del nombre de quien utilice la animación y luego moverse hacia atrás (serían los tres pasos para saludarnos). Recordemos que para guardar el nombre de usuario utilizamos la función preguntar a usuario por cadena de caracteres y, guardamos la respuesta en una variable de tipo cadena de caracteres27. Luego les proponemos a los alumnos la siguiente actividad:

“Anteriormente definimos la forma en la cual los personajes deben de saludar. La misma consta de tres pasos: moverse hacia adelante, decir “Hola nombre de usuario” y moverse hacia atrás.

Para el segundo paso no es válido que la respuesta a la pregunta sea “Hola nombre de usuario” para resolver el ejercicio, es decir, que solo podrán responder su nombre,

el cual será guardado en la variable.

¿Se animan a realizarlo?” Damos un tiempo a los alumnos para que traten de resolver el problema.

2. Demostración y análisis:

Preguntamos a los alumnos si pudieron resolver la actividad planteada. Es posible que tengamos las siguientes respuestas por parte de ellos:

Los alumnos pueden haber resuelto el ejercicio utilizando el método decir dos veces de manera consecutiva. En la primera instrucción donde se utiliza el método decir, el parámetro del mismo será la cadena de caracteres “Hola”, mientras que en la instrucción siguiente el parámetro del método decir, será el contenido de

Page 29: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

28

la variable donde han guardado el nombre del usuario. Está es una forma de resolver el ejercicio, pero no es la manera en la cuál preferimos, ya que utilizamos dos veces el método decir. Queremos utilizar sólo una vez el mismo.

Alguno de los grupos pudo haber encontrado la función unir. Pedimos que nos ayude a explicar a sus compañeros cómo utilizarla y para qué sirve.

Para poder hacer que el personaje diga en una misma instrucción toda la frase “Hola nombre de usuario”, debemos poder unir, de alguna manera, la cadena de caracteres “Hola” y el contenido de la variable, que también es una cadena de caracteres. Esta unión es un concepto muy importante en las Ciencias de la Computación, el cual se denomina concatenación. Este concepto lo podemos encontrar en Alice representado por la función unir, la cual toma dos parámetros. Estos son las dos cadenas de caracteres que queremos concatenar. La función unir se encuentra en el sector de funciones. Recordemos mantener seleccionado en el árbol de objetos, el objeto mundo, para luego poder elegir la función “unir” y arrastrarla al sector de edición de código. Luego debemos introducir los parámetros de la misma, los cuales serán las cadenas de caracteres correspondientes. La concatenación es utilizada en programas que forman parte de nuestra vida cotidiana. Cada vez que vamos al supermercado y debemos de pagar los productos vamos a la caja. En la misma los productos son pasados por un lector de código el cual no solo permite calcular el gasto total, sino también imprimir en el ticket los productos y su precio. En cada impresión de producto y precio hace su aparición estelar la concatenación.

3. Exploración y producción:

Proponemos a los alumnos que los tres personajes que han agregado a la animación saluden de la manera que definimos anteriormente. Durante la exploración de los alumnos podemos advertir junto a ellos que precisamos de nueve instrucciones para que los tres personajes saluden (mover hacia adelante, decir “Hola nombre de usuario” y mover hacia atrás). Observemos que utilizamos las mismas tres instrucciones para cada personaje, lo único que cambia es el objeto o personaje que lo realiza. Una buena idea sería poder agrupar estas tres instrucciones en un método. De esta manera, reduciremos las instrucciones a sólo tres. Para crear métodos en Alice, primero que nada debemos de pensar quien queremos que lo utilice. En este caso es algo que todos los objetos podrían de realizar, por lo que primero que nada seleccionamos el objeto mundo en el árbol de objetos. Luego seleccionamos la pestaña métodos (esta ubicada en el mismo sector que la pestaña funciones), donde se despliegan los métodos existentes y la opción crear nuevo método. Cuando seleccionamos esa opción, se despliega una pequeña ventana en la cual nos pide el nombre del nuevo método. Al igual que con respecto a los nombres de las variables, existen buenas prácticas de programación para los nombres de los métodos. Es importante que el nombre del método refleje lo que este realiza. Y cuando el nombre del mismo consta de varias palabras, es preferible separar las mismas por guiones bajos (“_”) que por espacios. Una vez finalizado este paso, se creará una nueva ventana de edición de código, con el nombre que le asignamos a nuestro nuevo método. Es decir, que toda instrucción que agreguemos en esta nueva ventana pertenecerá al método. Como nuestro nuevo método hace referencia a una forma de saludo, un buen nombre para el mismo sería saludar. Una vez creado el método saludar les proponemos a los alumnos la siguiente actividad:

“Ya creamos el método saludar. Ahora debemos escribir las instrucciones del mismo.

¿Se animan a hacerlo?”

Page 30: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

29

Les contamos a los estudiantes como usamos los métodos que creamos. Recordemos que para utilizarlos debemos de mantener seleccionado el objeto al cual corresponda el método en el árbol de objetos (en este caso el objeto mundo). Luego dirigirnos hacia la pestaña métodos, lo seleccionamos y arrastramos al sector de edición de código.

4. Demostración:

Preguntamos cómo les fue con la actividad planteada anteriormente. Es posible que los alumnos hayan resuelto las actividades de la forma que se enuncia a continuación: Para poder terminar de crear el método, los alumnos pueden haber utilizado las instrucciones basándose directamente en alguno de los personajes u objetos que hayan colocado en escena. Supongamos que uno de los personajes es un conejo, entonces estamos haciendo referencia que el cuerpo del método saludar, va a estar compuesto por las instrucciones siguientes (usando el conejo como el objeto en el cual se han basado). Esta no es una solución válida para la actividad planteada ya que no la resuelve. Seguramente los alumnos arrastraron el método en el sector de edición de código, y al momento de ejecutar el mismo, (aunque lo hayan arrastrado tres veces distintas), el único personaje que saltaba era el conejo. Por lo tanto, pareciera que hay que definir un método saltar por cada personaje, lo cual no ahorraría instrucciones. Pero en realidad es posible definir un método para todos los objetos que necesitemos. Para ello debemos de indicarle al mismo qué objetos pueden realizarlo. Esto lo hacemos con un parámetro. Para crear el mismo debemos de seleccionar la opción crear parámetro. Al igual que cuando creamos variables, debemos colocarle un nombre al parámetro. Se recomiendan las mismas buenas prácticas de programación que para nombres de variables y métodos, es decir, utilizar nombres relacionados con el contenido del parámetro, y en el caso de utilizar nombres que contengan varias palabras, utilizar guiones bajos (“_”) para separar las mismas. Al igual que cuando creamos una variable debemos de definir el tipo de dato del parámetro. En este caso un buen nombre para el parámetro sería personaje y el tipo de dato del mismo objeto, ya que quienes saltarán son los diferentes personajes. Con un método podemos agrupar instrucciones en donde dejamos algún dato a completar en el momento de utilizarlo. En nuestro ejemplo, sabemos que queremos que un personaje salude y se mueva en dos direcciones, por lo tanto, dejamos el lugar del personaje vacío para completarlo en el momento que necesitemos usar el método. Es como cuando tenemos un formulario genérico, donde dejamos líneas de punto a completar por cada persona. Aquí la línea de punto sería el personaje que realizará las acciones y a este concepto se le llama parámetro. Como recurso complementario a esta actividad, luego de realizarla, podemos reforzar la enseñanza del concepto de parámetro con una actividad unpugged de code.org (sin uso de la computadora), http://studio.code.org/unplugged/unplug6-es-ES.pdf. Aún si no realizan esta actividad en el curso recomendamos su lectura para encontrar diversos ejemplos y modos de explicar el concepto de parámetro, en la propuesta presentada por ejemplo se lo introduce con ejemplos de canciones infantiles dónde se va cambiando una parte de la letra, como por ejemplo: Un elefante se balancea, la mar estaba serena y el cuento de la buena pipa.

Page 31: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

30

5. Reflexión:

Para finalizar la actividad, cada grupo ofrecerá su animación a otro grupo para que el mismo sea valorado por medio de la grilla de reflexión.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Logra utilizar la función unir.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 32: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

31

Actividad 10: Repaso Condicional y Números Aleatorios

(Complementaria)

Resumen y Propósito de la Actividad: En este encuentro se profundizará el concepto de condicional y veremos el concepto de número aleatorio. Para ello utilizaremos una animación - videojuego prearmado. En el mismo tenemos que descubrir detrás de qué piedra está escondida la rana de la animación prearmada. Conceptos de Ciencias de la Computación:

Condicional Números Aleatorios

Referencias y Recursos:

Clase 13 de Dale Aceptar. Disponible en http://www.daleaceptar.gob.ar Juego de las ranas incompleto

(https://docs.google.com/file/d/0B2QQSF12CmdMNENuUXNfOHhZZXc/edit?pli=1) Juego de ranas completo

(https://docs.google.com/file/d/0B2QQSF12CmdMLXk1TjVtNUREYmM/edit?pli=1)

1. Motivación y recuperación de ideas previas:

Mostramos en el frente un juego realizado en Alice:

Tenemos tres ranas detrás de tres piedras y un burro que habla. El burro le dice al usuario que adivine qué rana va a saltar. El usuario puede ingresar un número y

a continuación una de las ranas salta. Si el usuario acierta el burro dice: “Ganaste!” y si no, el burro dice “Perdiste!”.

Les pasamos a los alumnos un archivo con el juego incompleto. Repasamos el código que está en el archivo viendo que se usan variables y que hay dos métodos propios con sus parámetros. Rescatamos estos conceptos que ya fueron aprendidos en actividades anteriores. En este juego incompleto la rana que salta siempre es la misma y no está la parte en la que el burro dice si el usuario ganó o no. Les damos unos minutos a los alumnos para que realicen la siguiente consigna:

Modificar el código para que no salte siempre la primera rana.

2. Demostración y análisis:

Preguntamos a los alumnos si alguno pudo encontrar la manera de realizar esto. Es posible que nos encontremos con los posibles escenarios:

Para poder cumplir con el objetivo, los alumnos pueden haber cambiado directamente la rana que salta, es decir, en vez de que salte la primer rana, hacer que salte de la

Page 33: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

32

misma manera la segunda o la tercer rana. Les explicamos que esto no resuelve la tarea, ya que sigue saltando siempre la misma rana.

Si alguno de los alumnos descubrió cómo generar de manera aleatoria la rana que deberá saltar, le pedimos que explique al grupo.

En el caso en que no hayan podido realizarlo explicamos como hacerlo. Para ello, debemos buscar en la pestaña funciones, la función número aleatorio. La misma debemos arrastrarla hacia la sección de código, y se la asigna como contenido a la variable. Cuando asignamos debemos modificar los parámetros de la función para que se adecue a nuestras necesidades. Debemos definir el rango de números que pueda elegir la computadora de manera independiente. Para ello definimos el valor mínimo, el valor máximo y pedimos que los números generados sean enteros.

3. Exploración y Producción:

Damos unos minutos para que los alumnos exploren la herramienta ya que ahora queremos agregar la parte en la que el burro dice si el usuario ganó:

¿Cómo podemos hacerlo?

4. Demostración:

Si algún alumno logró realizarlo le pedimos que nos ayude a explicar cómo hacerlo al resto de los compañeros. Necesitamos que el burro diga algo diferente dependiendo si el usuario ganó o no, es decir, si el número que ingresó es igual o no al número de la rana que salta. Tenemos una condición para realizar una acción u otra. Esto podemos hacerlo en alice con la sentencia “Si/Si no” (o “If/Else”).

5. Reflexión:

Hacemos un breve recorrido por la actividad y recuperamos los conceptos trabajados. Expresamos la incorporación de los mismos en la animación de cada grupo. Para finalizar la actividad, cada grupo ofrecerá su animación a otro grupo para que el mismo sea valorado por medio de la grilla de reflexión.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Incorpora en su animación variables con números aleatorios.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 34: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

33

Actividad 11: Ciclos

(Fundamental)

Resumen y Propósito de la Actividad: En esta actividad trabajaremos las nociones de iteración, ciclos, contador y mientras. También se repasará las nociones de condicional y variable. La actividad se realizará a través de la elaboración de una animación de un partido de volley. Conceptos de Ciencias de la Computación:

Iteración. Ciclos (while - for). Contador

Referencias y Recursos:

Animación prearmada partido de volley.

1. Motivación y recuperación de ideas previas:

Presentamos a los alumnos la animación prearmada. La misma consta de dos personas que están jugando al volley. Les proponemos la siguiente actividad:

“Queremos crear una animación en la cual los personajes se den una serie de pases consecutivos jugando al volley.

¿Cómo hacemos para que cada uno de 5 pases? ¿Y 10? ¿Y 20? ” Damos un tiempo a los alumnos para que exploren la herramienta y traten de resolver la actividad.

2. Demostración:

Preguntamos a los alumnos cómo les fue con la actividad. La mayoría de los alumnos nos dirán que tuvieron que utilizar un montón de instrucciones para llevar a cabo la animación. Y mientras más pases tuvieran que hacer los personajes, más instrucciones deberían agregar. Luego les decimos:

“Nos creen si les decimos, que sin importar la cantidad de pases que realicemos,

con tan solo tres instrucciones podemos resolver el problema.” Para ello utilizamos la construcción repetir. La misma se encuentra en la parte inferior de la sección de edición de código. Luego, cuando arrastramos repetir, debemos de asignar la cantidad de veces que queremos que se repitan las instrucciones que colocaremos dentro de la construcción. Para poder resolver la actividad propuesta, tenemos que definir primero, la cantidad de pases que queremos que de cada jugador. Luego, debemos introducir las instrucciones que queremos que se repitan, que serían de manera sintética, mover la pelota desde el jugador 1 hacia el jugador 2 y viceversa.

Page 35: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

34

Repetir hace referencia a un concepto muy importante de las Ciencias de la Computación, la iteración. El mismo alude a la la repetición de una serie de instrucciones que necesitamos repetir una cierta cantidad de veces. En la mayoría de los lenguajes de programación, la construcción repetir es representada por el ciclo for.

3. Exploración y Producción:

Aprendimos un concepto muy importante en Ciencias de la Computación como lo es la iteración. Como vimos para poder llevarlo a cabo en Alice, utilizamos la instrucción repetir, pero no es la única manera.

¿Se animan a explorar la herramienta y tratar de resolverlo de otra forma?

4. Demostración:

Preguntamos a los alumnos si han podido resolver la actividad. En el caso en que hayan podido, les pedimos que expliquen lo que han realizado. Para poder llevar a cabo la actividad anterior sin utilizar la construcción repetir, podemos usar la construcción mientras. Recordemos que la misma se encuentra en el sector inferior del sector de edición de código. Observamos que cuando arrastramos la misma hacia el sector de edición de código, debemos colocar una condición como cuando utilizamos los condicionales. En este caso la condición nos indicará cuando se deben de dejar de ejecutar las instrucciones que forman parte del bloque mientras, es decir, que cuando la condición deseada se deje de cumplir, no se ejecutarán más esas instrucciones. Ahora pensemos la condición que necesitamos para resolver nuestra actividad. El ciclo deberá finalizar cuando ambos jugadores hayan realizado la cantidad de pases que se necesiten. Podemos notar que necesitamos algo que nos indique cuantos pases van dando ambos jugadores. Preguntamos a la clase:

¿Qué concepto de las Ciencias de la Computación que hemos aprendido nos permite guardar información que nos interese?

Retomamos el concepto de variable, ya que precisamos de la misma para poder ir guardando el valor de la cantidad de pases que vamos dando. De esta manera podemos pensar como posible condición de la estructura mientras a: “mientras la cantidad de pases que tengo que dar sea distinta a la cantidad de pases que dí” sigo ejecutando las instrucciones del ciclo. Esta condición la podemos expresar en Alice como contador_de_pases != pases_a_dar. Ahora lo que debemos pensar es como ir actualizando el valor de la variable contador_de_pases. Como podemos ver cada vez que se ejecuten los dos movimientos de la pelota debemos de incrementar elcontador_de_pases en uno. Cómo podemos ver los contadores forman parte de nuestra vida cotidiana. Cuando vemos un partido de fútbol tenemos dos variables contadores las cuales se modifican cuando alguno de los dos equipos mete un gol.

Page 36: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

35

5. Reflexión :

En el cierre del encuentro, consultaremos si ha quedado alguna duda. Se dará tiempo para que los grupos ofrezcan su animación a los compañeros, quienes valorarán su trabajo por medio de la grilla de reflexión. Recordemos que la valoración de los propios pares contribuye a enriquecer su propio trabajo.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Logra que con menos de 5 instrucciones en la animación se repitan los pases de volley al menos 5 veces.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 37: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

36

Actividad 12: Ciclos

(Complementaria)

Resumen y Propósito de la Actividad: En esta actividad, continuaremos trabajando con el juego de la rana definido en la Actividad 11 y se irán agregando complejidades al mismo para presentar las nuevas funciones. Repasamos los conceptos de iteración y ciclos. Conceptos de Ciencias de la Computación:

Iteración. Ciclos.

Referencias y Recursos:

[1] Juego de las ranas incompleto. [2] Juego de las ranas completo.

1. Motivación y recuperación de ideas previas:

Haremos referencia a la actividad anterior donde los alumnos vieron cómo usar en Alice número aleatorio y condicional. Repasamos estos conceptos. Luego continuaremos trabajando con el juego de la rana.

2. Exploración y Producción:

Les presentamos a los alumnos la consigna, diciéndoles que vamos a hacer una modificación al juego: Queremos que si el usuario pierde, entonces el juego se repita, es decir, que se vuelva a elegir

una rana al azar y el usuario pueda ingresar un número para adivinar qué rana saltará. Si el usuario gana, el juego termina.

Si el usuario no ganó ¿puede seguir jugando? ¿Cómo podemos lograrlo?

3. Demostración:

Rescatando las intervenciones de los alumnos planteamos que para poder poder repetir una serie de acciones mientras suceda algo, tenemos que usar la instrucción while (en castellano mientras). En la misma tenemos que decir qué tiene que suceder para que se sigan repitiendo las acciones. En nuestro caso queremos que se repita el juego si el usuario no ganó, es decir, si su respuesta es diferente de la rana sorteada.

4. Producción:

Ahora destinamos unos minutos del encuentro para que los alumnos avancen en sus producciones: no solamente para que incorporen los nuevos conceptos, sino también para que

Page 38: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

37

hagan una revisión sobre la trama con la que vienen trabajando, ya que es probable que vayan realizando modificaciones sobre la idea original.

5. Reflexión:

Proponemos que dos o tres grupos (de acuerdo al tiempo que tengamos disponible) compartan sus creaciones con los compañeros y éstos deberán estar atentos para luego hacerles una devolución sobre lo que vieron28. Pueden ser comentarios o sugerencias sobre:

La incorporación de los conceptos trabajados. La elección de los personajes. La decisión de ciertos movimientos. etc.

Los últimos minutos del encuentro estarán destinados a que cada grupo nos pregunten las dudas que tienen. También, se dará tiempo para que los grupos ofrezcan su animación y, así, sus compañeros podrán valorar su creación por medio de la grilla de reflexión29.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Logra incorporar la instrucción while. Consigue que el juego tenga más de 2 intentos.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 39: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

38

Actividad 13: Eventos

(Fundamental)

Resumen y Propósito de la Actividad: En esta actividad explicaremos el concepto de Evento, y su importancia en el mundo de la computación. Luego propondremos que los chicos sigan trabajando en sus producciones, aplicando todos los conocimientos que hayan visto durante el curso. Conceptos de Ciencias de la Computación:

Eventos

Referencias y Recursos:

Animación pre-armada del penal. Proyector.

1. Motivación y Repaso :

Empezamos la clase mostrándoles a los chicos una animación de un tiro penal30: El jugador siempre patea hacia la derecha, mientras que el arquero, vuela hacia la izquierda o derecha.

El juego incompleto que les pasamos tiene varios métodos, variables, dummy objects, hacer cosas a la vez, números aleatorios, todo interactuando para poder hacer que un personaje patee un penal y que otro sea el arquero que se tira a uno u otro lado. El método más importante es “patear”. Estaría buenísimo poder elegir nosotros hacia donde pateara el jugador y que no siempre patee hacia la derecha:

¿Se animan a hacerlo?

2. Exploración y Producción:

Preguntamos a la clase si se les ocurre como hacer para elegir nosotros en el momento hacia donde va a patear el jugador el penal. Tomamos todas las ideas, y en el caso en que haya algún grupo que lo haya descubierto pedimos que explique a todos31.

3. Demostración:

Lo importante aquí es que la animación se queda esperando a que el usuario realice una acción, esto en computación se conoce como “programación dirigida por eventos”.

“Los computólogos programamos mucho bajo este tipo de idea. Pensemos un ratito y nos

vamos a dar cuenta que los programas que usamos o hasta las mismas páginas de internet funcionan de esta manera. Los videojuegos se basan en eventos para mover personajes y

dependiendo de lo que realicemos lo que sucede. Si nos ponemos a pensar hasta el

Page 40: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

39

famoso Candy Crush que muchos jugamos en Facebook depende de los eventos que generemos con nuestro mouse”.

Les mostramos a los chicos como se utilizan los eventos en Alice y las ventajas de los mismos para realizar videojuegos.

4. Exploración y Producción:

Utilizando la animación prearmada del penal, les pedimos que utilicen algún Evento para poder elegir ellos mismos hacia donde patear.

5. Reflexión :

Dejamos a los chicos que sigan trabajando en sus producciones, tratando de que apliquen en las mismas todos los conceptos vistos, en particular algo con Eventos. Para finalizar la actividad, cada grupo ofrecerá su animación a otro grupo para que el mismo sea valorado por medio de la grilla de reflexión.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Logra que el usuario elija a donde patea el jugador.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 41: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

40

Actividad 14: Producciones Motivadoras

(Complementaria)

Resumen y Propósito de la Actividad: En esta actividad nos enfocamos en alistar las producciones para presentarlas en algún evento o exposición que se realizará en las distintas escuelas de la ciudad de Córdoba. Al comienzo, se les pedirá a los alumnos que retomen sus producciones y se les dará tiempo para que produzcan en el aula. Luego, se mostrarán los avances de las producciones entre sus compañeros y se buscará sugerencias. Al final de la actividad se les mostrarán videos de jóvenes estudiantes que pasaron por su misma experiencia en la producción de animaciones con Alice. Referencias y Recursos:

Proyector. Videos ganadores Competencia Dale Aceptar:

Año 2012:

http://www.youtube.com/watch?v=trCEi-QnchU http://www.youtube.com/watch?v=cNqE9ZRTMdw http://www.youtube.com/watch?v=Vk5cf5RPFGo

Año 2013:

https://www.youtube.com/watch?v=FGTfdQDBt8g

Pagina web Competencia Dale Aceptar: http://www.daleaceptar.gob.ar/cms/inscripcion/

1. Motivación y Repaso:

Al comienzo se les pide a los alumnos que retomen sus producciones y que avancen en su desarrollo para luego exponerla entre sus compañeros. En esa exposición se les pedirá que repasen los conceptos que aplicaron en su animación o videojuego32. Una vez finalizada la etapa de producción y proyección de las animaciones les preguntamos a los alumnos:

Cuando queremos ir al cine, ¿cómo elegimos qué película ver?33

Teniendo en cuenta las intervenciones de los alumnos, los invitamos a elaborar la ficha técnica y la sinopsis sobre sus producciones, lo cual permite avanzar en el desarrollo de la animación o videojuego. Para eso es necesario completar la siguiente ficha:

Integrantes del Equipo: Nombre de la productora: Nombre de la producción: ¿Qué eligieron hacer una animación o videojuego): Escenario:

Page 42: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

41

Personajes: Sinopsis (de qué se trata la historia): Escenas (introducción, problema y desenlace): Efectos especiales

2. Producción y Exploración:

Se da un tiempo para que los alumnos trabajen en la Plataforma Alice con la ficha técnica que han elaborado.

3. Demostración:

Una vez avanzadas las producciones se les pedirá que las muestren desde el proyector para que puedan compartir sus producciones e intercambiar sugerencias34.

4. Reflexión:

Se les mostrará a los alumnos videos de estudiantes secundarios que en los años 2012 y 2013 participaron de Dale Aceptar y cuentan sus experiencias para motivarlos a que ellos también puedan producir su animación. . Para finalizar la actividad, cada grupo ofrecerá su animación a otro grupo para que el mismo sea valorado por medio de la grilla de reflexión.

Criterio Agrega algunos detalles (personajes, escenario, objetos) a su animación.

Avanza en su animación utiliza algunas de las ideas trabajadas hoy.

Avanza en su animación e integra lo aprendido hoy a saberes aprendidos en otras clases. Explora la plataforma y descubre por sí solo una nueva función. Utiliza comentarios en el código para hacer comprensible la lectura del mismo. Si otra persona ve tu código puede entenderlo. Completa la ficha de sinopsis propuesta.

Puntuación Entre 0% y 40%: Es necesario explorar más la herramienta.

Entre 41% y 69%: Buen trabajo. Necesitas un poco más de tiempo.

Entre 70% y 100%: Muy bueno lo tuyo! Has completado excelentemente la tarea de hoy.

Page 43: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

42

Notas 1 Busaniche, B. (2007) Alfabetización digital: las fronteras del aprendizaje y el control de la información. www.bea.org.ar

2 Paenza, A. (2013) Alfabetización Siglo XXI. Página 12. 23 de Marzo, 2013. 3 Entorno innovador de programación 3D que permite fácilmente crear una animación para contar una historia, a través de un juego interactivo, o un video. Es una herramienta de enseñanza libre, diseñada para exponer al estudiante de programación orientada a objetos, aprendiendo conceptos fundamentales de programación. www.alice.org 4 Nota al docente: Es primordial que, durante las clases, se recuperen los conocimientos previos y las intuiciones de los estudiantes porque permiten que los mismos estén activos, y puedan construir conocimientos a partir del intercambio. Por su parte, el docente debe ser paciente y esperar las respuestas de los estudiantes. Sostener el silencio en la clase es difícil, pero es necesario para promover el aprendizaje. El trabajo de “aprender”, debe hacerlo principalmente el alumno. Es muy importante que en este primer encuentro se establezca el contrato entre el docente y los alumnos de que en esta clase la participación es obligatoria. 5 Nota al docente: En un videojuego, el “espectador” pasa a ser parte de la historia, es quien controla los personajes. 6 Nota al docente: Con esta actividad, pretendemos identificar colectivamente los principales elementos de una animación:

Libreto Personajes Acciones Escenario Posiciones de cámara Escenas

Es importante que sean los alumnos quienes identifiquen estos elementos para desarrollar la competencia de la observación de un producto tecnológico. Tener una mirada formada de un producto o proceso nos permite aprender sobre él o hacer una apropiación crítica del mismo. Aprender a observar los elementos de una producción audiovisual permite desarrollar el análisis y el autoaprendizaje. 7 Nota al docente: Las animaciones por computadora consisten en imágenes en movimiento. Generalmente los artistas diseñan imágenes y a través de la programación, los programadores, generan acciones o movimientos dándole vida a esas imágenes. Con este proceso se crean películas o simulaciones, por ejemplo. Las animaciones tienen un GRAN componente creativo. Como vimos en Scrat Gone Nutty, tiene un libreto muy original: una ardilla prehistórica obstinada en guardar sus bellotas y el caer de las mismas, provoca un acontecimiento que cambiará la historia. El personaje central es la ardilla y el escenario algún punto del planeta durante la Era del Hielo. La animación tiene varias escenas, o bloques de acontecimientos. Una escena muy creativa ocurre cuando Scrat, en caída libre, realiza piruetas en el aire con las bellotas. Aunque esta animación no tiene diálogos, si tiene un libreto. Escena tras escena Scrat realiza acciones precisas que le dan un sentido a la historia total. ¿Cuáles son tus animaciones favoritas? Además de la creatividad, las animaciones tienen otro gran componente que es la programación. Sin esta, todavía estaríamos en la era de los dibujos animados que tanto nos hacían reír cuando éramos niños. Vemos entonces que la computación además de consistir en el desarrollo de algoritmos, es una tarea sumamente

Page 44: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

43

creativa. En este curso les enseñamos a programar para que puedan poner imágenes 3D en movimiento. 8 Nota al docente: Luego de “predisponer” a los alumnos, es decir, disponerlos/motivarlos para el aprendizaje de desarrollo de animaciones, los orientamos sobre qué tareas tendrán que realizar a lo largo del curso. Saber qué se espera de ellos, conocer el punto de llegada, es central para que puedan regular su propio proceso de aprendizaje y tomar decisiones coherentes con el producto esperado. Es por eso que en este momento les presentamos la consigna que guiará todo el curso de programación que proponemos. Cada escuela decidirá sobre los temas dentro de los cuales los alumnos deberán desarrollar su animación, esto permitirá potenciar los proyectos de la escuela e integrar contenidos. 9 Nota al docente: En un libreto se describe cómo transcurre la historia, las acciones que deben de realizar los personajes, el escenario donde suceden los hechos. Cuando programamos le debemos decir a la computadora (en un lenguaje de programación que pueda entender) lo que queremos que haga, de la misma forma en la que el libreto le dice al actor, las acciones que debe realizar. A diferencia de los lenguajes naturales (como el español), los lenguajes de programación no poseen ambigüedades, es decir que una vez escrita una línea, solo se la puede interpretar de una única manera. Los personajes, escenarios y elementos que los componen se denominan objetos en computación. Los personajes tienen ciertas características físicas, como lo son el color de pelo, altura o vestimentas. Los escenarios y sus elementos pueden tener diferentes colores de fondo, distintos tipos de suelos o texturas. Estas características son denominadas atributos en el mundo de la computación. 10 Nota al docente: Durante esta actividad, el docente visitará a cada uno de los grupos y su rol será el de ayudarlos a organizarse. El docente aprovecha este momento para tener una interacción más cercana con los chicos. Puede realizar, por ejemplo, preguntas que orienten la tarea: ¿Quién se hará cargo de qué rol? ¿Sobre qué tema te gustaría hacer la animación? En este momento también podrá identificar que algunos grupos presentan mayores fortalezas que otros. Esto permitirá que en diferentes momentos de la actividad, el docente pueda proponer ayuda entre pares (que un grupo ayude a otro). Este será el momento en que el docente conozca las primeras ideas de los alumnos. 11 Nota al docente: La ventana del editor de código muestra las líneas de código, es decir, instrucciones que le damos a la máquina para que ejecute la animación. Se pueden agregar nuevas acciones y el orden de las acciones se puede cambiar dentro de una escena. A menos que le demos una orden contraria, la máquina lo ejecuta de manera secuencial. El árbol de objetos va listando todos los objetos que utilizamos en nuestra animación a quienes les podemos cambiar el nombre 12 Nota al docente: Además de enseñarles Alice, queremos enseñarles a aprender a aprender computación, a aprovechar su intuición, y a trabajar en grupo. Estas son competencias centrales relacionadas con la permanencia en el primer año de la universidad en cualquier carrera que elijan. 13 Nota al docente: Las producciones de Dale Aceptar son creadas por chicos de entre 11 y 18 años, en general. Es necesario, hacer hincapié en que estas producciones fueron realizadas por estudiantes de edades similares a ellos, donde ninguno conocía previamente la herramienta Alice. Los videos tutoriales con los que aprendieron los participantes de Dale Aceptar están listados entre los recursos de esta clase. 14 Nota al docente: El objetivo de este momento es que se enriquezca el trabajo con la colaboración, no sólo de su grupo productor, sino de sus compañeros de curso. Este modo de trabajo colaborativo es propio de los equipos que desarrollan software.

Page 45: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

44

15 Nota al docente: Una alternativa es seleccionar dos grupos (de manera aleatoria, justamente para consolidar el contrato didáctico de que en esta clase la participación es obligatoria), cuyos integrantes mostrarán sus animaciones para la clase. Es necesario hacer énfasis de que, parte del trabajo de los programadores, es mostrar sus avances a sus equipos de colaboradores. Esto contribuye a orientar sobre el modo de trabajo las carreras TIC. 16Nota al docente: En este momento el rol del docente es visitar los grupos y orientar el aprendizaje con preguntas. Eviten decirles a los alumnos qué tienen que hacer. El objetivo de este segmento es justamente la exploración de la plataforma. 17 Nota al docente: Recuperando las intervenciones de los alumnos mostramos entonces el método “Poner vehículo.” 18 Nota al docente: Pensemos ahora en los libretos de las obras de teatro. Supongamos que tenemos varios actores de reparto que tienen un papel similar, es decir llevan a cabo las mismas acciones. En este caso lo único que cambiaría en cada libreto, es el nombre del actor que llevará a cabo la acción, en las diferentes partes del libreto donde aparezca esta información. Como se puede ver es algo bastante tedioso escribir varios libretos iguales, donde lo único que cambia sea el nombre de quien lleva a cabo las acciones. Para ello tenemos una opción mucho mejor. Poner líneas punteadas en lugar de los nombres. De esta manera sólo deberíamos de fotocopiar un mismo libreto y entregárselo a los actores, llenando los mismos con sus respectivos nombres. Esas líneas punteadas juegan el rol de parámetros de un método. 19Nota al docente: Los comentarios no son necesarios para el funcionamiento de la animación. Pero tiene un rol muy importante para escribir código fácil de leer, tanto por el autor como para otro programador. A través del uso de los comentarios se adquiere la disciplina de organizar el código y por lo tanto las ideas que subyacen tras las líneas escritas. 20 El propósito de esta actividad es que surja la necesidad de hacer una “marca” hacia donde el personaje se mueve. Seguramente algún alumno logrará hacer mover el personaje con cierta imprecisión y entonces surge la necesidad de utilizar los dummy objects. 21 Siempre con la intención de que los alumnos puedan dar cuenta de su propio aprendizaje y que el docente pueda tener una interacción más cercana con ellos. 22 La traducción de Alice para la función de dummy objects es muy mala. En la versión Rebeca figura como “poner muñeco en objeto”, en la traducción de Alice figura como “dejar caer maniquí en objeto”. 23 En este momento de la actividad, los docentes visitan los grupos para orientar a los alumnos y regular la actividad; a su vez, incentivan a los estudiantes que resuelven primero las actividades a colaborar con sus pares. 24 Es importante que el docente le recuerde a sus alumnos que la variable debe ser representativa, es decir, que tenga un nombre relacionado a su contenido. 25 En este momento el rol del docente es visitar los grupos y orientar el aprendizaje con preguntas. Eviten decirles a los alumnos qué tienen que hacer. El objetivo de este segmento es justamente la exploración de la plataforma. 26 La intención es que los alumnos colaboren, no sólo con su grupo productor, sino con sus propios compañeros, algo que es propio de los equipos que desarrollan software (trabajo colaborativo).

Page 46: Enseñanza de Ciencias de la Computación en la Escuela

UNC++ http://umm.famaf.unc.edu.ar/ http://www.facebook.com/unc.masmas

45

27 Este momento es oportuno para que el docente remarque la importancia de que el nombre de la variable debe tener relación con lo que guarda la misma. 28 El objetivo de este momento es que se enriquezca el trabajo con la colaboración, no sólo de su grupo productor, sino de sus compañeros de curso. 29 Recordemos que la valoración de los propios pares contribuye a enriquecer su propio trabajo. 30 Todos deberán de tener la animación pre-armada del penal, para poder modificarla a posterior. 31 Como venimos reiterando en las actividades anteriores, éste es un momento en donde tenemos que resaltar la participación y colaboración de los alumnos. 32 Vamos rescatando las ideas de los chicos, con la intención que se den cuenta lo que ellos mismos ya han aprendido. Recordar mantener el minuto de silencio de espera en las preguntas. 33 se pretende que los propios alumnos identifiquen los elementos de ficha técnica y la sinopsis. 34 En este momento, el docente podrá identificar que algunos grupos presentan mayores fortalezas que otros, lo cual le permitirá proponer (en diferentes momentos o en futuras actividades) ayuda entre pares, es decir, que un grupo ayude a otro.

Enseñanza de Ciencias de la Computación en la Escuela. Guía de Actividades Prácticas por UNC++ se distribuye bajo una Licencia Creative Commons Atribución-NoComercial-CompartirIgual 2.5 Argentina.