💾 Archived View for gamifi.cat › blog › 2015-10-07_computacional_escuela_2 captured on 2024-05-10 at 11:30:41. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2023-03-20)
-=-=-=-=-=-=-
En aquest curs es fa una introducció al pensament computacional, presentant els conceptes principals i la seva aplicació al nostre entorn quotidià . A més, s’implementaran aquests conceptes en l’entorn de programació d’Scratch.
El llenguatge és un instrument fonamental per al pensament. Amb ell podem crear idees i transmetre-les per comunicar amb els altres. Un llenguatge d’ordinador és un llenguatge formal artificial que presenta tres mecanismes bà sics: primitives, combinació i abstracció.
Les primitives són unitats bà siques, en el cas d’Scratch són els blocs que es poden anar arrossegant i agrupant per tal d’encaminar les accions. Les primitives d’Scratch s’agrupen en 4 tipus: comandaments (presenten pestanya per combinar o apilar blocs), funcions (blocs arrodonits o punxeguts que retornen un valor relatiu a l’objecte), estructures de control (forma de “C” que permet repetir valors determinats o prendre decisions si una condició es dóna o no), i els esdeveniments (arrodonits de dalt i a baix pestanya per connectar).
El mecanisme de combinaciĂł permet agrupar les primitives a partir de les regles del propi llenguatge de programaciĂł. A mesura que anem combinant blocs anirem creant el projecte i escrivint el programa. El tipus de dades que usa Scratch sĂłn de tipus booleĂ , nĂşmero o una cadena de carĂ cters.
Finalment, el mecanisme d’abstracció permet compactar sota un mateix nom un grup de primitives que creen una nova primitiva. Scratch 2.0 permet crear els nostres propis blocs a partir de les primitives que es presenten o creant les pròpies. Scratch és programari lliure i es pot modificar. I això permet que més gent hi treballi de manera voluntà ria. De fet, una de les iniciatives més destacades és Snap!, desenvolupat a la Universitat de Berkeley. Scratch funciona amb flash i no es pot usar als mòbils (de moment, s’està treballant…) en canvi, Snap!, és una derivat d’Scratch adaptat directament també per a entorns mòbils.
L’entorn de programació és on es pot escriure i executar els programes. En el cas d’Scratch, es presenten dos pantalles: a l’esquerra es visualitza el projecte que s’està creant, i a la dreta es pot crear el projecte a través de tres pestanyes: programació, vestits i so. A sobre de les pantalles trobem el menú on canviar l’idioma, accedir al nostre perfil, guardar projectes, etc. Sota de les pantalles hi ha una motxilla que permet guardar blocs per a ser utilitzats en altres projectes que estiguem creant. Crear un projecte és escriure un programa i l’entorn és molt intuitiu.
Els fons o escenaris es dissenyen i programen separadament als objectes. Trobarem aquest apartat “Escenari” al costat esquerra dels objectes o Sprites, sota la pantalla de l’esquerra on s’executa el programa. Clicant allà , trobem que, al igual que els objectes, l’escenari té pestanya de programació, de vestits i de so.
Els blocs tenen diferents colors en funció de la seva naturalesa, cosa que permet fà cilment identificar-los. A més, al crear un compte a Scratch s’accedeix a una gran comunitat online amb tot tipus de projectes que es poden reutilitzar. Al primer projecte es farà un pong d’un jugador. Som-hi!
Pong és un dels videojocs més antics. Jo el recordo en un Spectrum d’aquells de cassette… El joc consisteix en dues pales o raquetes (cadascuna controlada per un jugador) que s’han d’anar passant la pilota. Un tenis de tota la vida però simplificat en digital. El Pong que farem, però, només presenta una paleta i, per tant, és només per a un jugardor.
A través d’aquest joc ens familiaritzarem amb els moviments dels objectes a l’escenari controlant el moviment, farem interactuar objectes i afegirem efectes de so i grà fics. El plantejament del problema presenta múltiples processos a executar i els he resumit en quatre passes (veure programació Pong un jugador):
1. Crear una pilota que rebota a les cantonades de l’escenari. A l’iniciar un projecte a Scratch, per defecte, apareix el gat Scratch com a Sprite o Objecte. Podem modificar-lo clicant a sobre de la pantalla de la dreta, on diu “Vestits”. Allà tenim un editor grà fic per dibuixar la nostra pròpia pilota o importar altres pilotes: tan dels recursos d’Scratch com de qualsevol imatge que tinguem a l’ordinador.
A mĂ©s crear la pilota a l’editor grĂ fic, hem de crear dos scripts amb els blocs (a la pestanya de programaciĂł que hi ha a sobre de la pantalla de la dreta, tot just a l’esquerra de la pestanya “vestits”): un dels scripts serveix per a donar una posiciĂł inicial de la pilota i l’altre per aplicar-li el moviment. Com es veu, Ă©s un llenguatge de programaciĂł gramatival anomenat tambĂ© pseudocodi perquè es programa sense escriure directament les lĂnies de codi.
El primer script diu que, quan es cliqui la bandera verda (que és com s’executen els programes a Scratch), que l’objecte vagi a les coordenades x (15) i y (150) i que apunti en la direcció indicada. En aquest cas, un número a l’atzar entre 150 i 220.
Al següent bloc, se li diu que, quan es cliqui la tecla d’espai, per sempre, es mogui 10 passes (10 pixels) i, si toca una cantonada de l’escenari, reboti.
2. Crear una paleta que es mogui amb el ratolĂ del jugador.
Primer haurem de crear un nou sprite o objecte. El podem titular “paleta” i fer servir l’editor per dibuixar un rectangle des de la pestanya de “vestits”. A la pestanya de programes, posem que per sempre, es fixi la x al moviment del ratolà quan es pressioni la tecla espai.
3. Farem que la pilota reboti a la paleta.
Tornem a l’objecte pilota i afegim el següent script. El gir fa un efecte més realista a la pilota. El so pop sonarà cada vegada que la pilota toqui la paleta.
blocs-pong-pilota-rebota [IMG]
4. Fer finalitzar el joc quan la pilota toqui al terra.
També a dins de l’objecte pilota, afegirem la manera de finalitzar el joc. Posarem un terra del color que vulguem i després donarem la instrucció a la pilota que, quan toqui aquest color, aturi el projecte i tots els seus scripts. A més, sonarà una campana que serà prà cticament imperceptible. Per sentir-la sencera o més tros, entre el “tocar so” i el “aturar so” es podria posar un “y espera” o un “espera X segons”.
Haurem de crear un Pong amb dues pilotes. La nova pilota es comportarà com la primera, rebotant a les cantonades i a la paleta, i emetent un so quan toqui la pilota. A més, si les dues pilotes interactuen, hauran de dir un missatge.
Veure el Pong al web d’Scratch
Mòdul3. Programació: conceptes i mètodes (projecte: Pong 2 jugadors)