Lesson 16: Funzioni con l'artista

Funzione | Artista

Overview

Gli alunni verranno introdotti all'utilizzo delle funzioni su Code.org. Sfruttando le funzioni, l'Artista creerà e modificherà immagini magnifiche. Per la realizzazione di schemi più complessi, gli alunni impareranno ad annidare le funzioni richiamandone una dentro l'altra.

Purpose

Uno dei fattori più importanti di questa lezione è fornire agli alunni un'occasione per creare qualcosa di cui siano orgogliosi. In questi esercizi le immagini diventano sempre più complesse, ma ogni nuovo esercizio si basa su quanto svolto in quello precedente. Alla fine della lezione, gli alunni si sentiranno sicuri di sé ed orgogliosi del lavoro svolto.

Agenda

Introduzione (15 min)

Attività ponte - Funzioni (15 min)

Attività principale (30 min)

Conclusione (15 min)

Approfondimenti

View on Code Studio

Objectives

Students will be able to:

  • classificare e generalizzare le istruzioni di un programma in utili funzioni
  • riconoscere quando una funzione può aiutare a semplificare un programma

Preparation

Collegamenti

Heads Up! Please make a copy of any documents you plan to share with students.

For the Teachers

For the Students

Vocabulary

  • Funzione - Una parte di codice alla quale è associato un nome e che può essere richiamata più volte.

Support

Report a Bug

Teaching Guide

Introduzione (15 min)

Presentazione

Chiedi alla classe di ripensare alla lezione tradizionale "Funzioni - Composizione di canzoni" e di riportare alla mente il concetto di funzione. Apri un confronto su quando è opportuno utilizzare una funzione durante la scrittura di una canzone.

Spiega alla classe che ci sono due momenti chiave relativi all'utilizzo delle funzioni.

  1. La dichiarazione - La dichiarazione di una funzione è ciò che crea la funzione stessa. In una dichiarazione di funzione, inserisci il codice che andrà a costituire la funzione ed assegni il nome alla funzione. È necessario dichiarare una funzione prima di poterla utilizzare.

  2. La chiamata - La funzione deve poi essere richiamata nei punti del codice dove serve. Basta invocare il nome della funzione, per richiamarla e fare eseguire in quel punto le istruzioni che la costituiscono. Assicurati che una funzione sia definita correttamente prima di richiamarla nel tuo programma.

La classe può riflettere sulla scrittura di canzoni, come esempio per evidenziare e comprendere questi due momenti chiave. Nell'attività tradizionale, la funzione contenente il testo del ritornello è stata denominata "ritornello". Quando abbiamo creato questa funzione per la prima volta, abbiamo cerchiato i testi che sarebbero stati inseriti nella funzione. Una volta che abbiamo richiamato la funzione, potremmo leggere il testo e sostituire il testo ripetuto del ritornello con una chiamata alla funzione "ritornello".

Continua la conversazione finché gli alunni non mostrano una certa sicurezza in merito ai concetti base delle funzioni che vengono dichiarate e richiamate. Se gli alunni restano perplessi, prendi in forte considerazione la possibilità di svolgere una delle attività di collegamento prima di passare agli esercizi di Code.org.

Attività ponte - Funzioni (15 min)

Questa attività aiuterà a portare i concetti tradizionali introdotti in "Funzioni - composizione di canzoni" nel mondo online in cui gli alunni stanno iniziando a muoversi. Scegli una delle seguenti attività da svolgere con la tua classe.

Suggerimenti

Blocchi funzione:

Il blocco a sinistra è una dichiarazione di funzione, il blocco in cui gli alunni assegneranno un nome alla funzione ed utilizzeranno per inserire le istruzioni che la costituiranno. Il blocco a destra è una chiamata di funzione, il blocco che fa eseguire il codice della funzione. Quando necessario, in un programma, si possono usare diversi blocchi di chiamata della stessa funzione.

Attività tradizione con l'uso di blocchi di carta

Scegli una canzone da riprodurre che piaccia agli alunni e stampa i testi. Se vuoi, puoi usare la stessa canzone usata nella lezione tradizionale "Funzioni - Composizione di canzoni". Suddividi la classe in gruppi o coppie. Distribuisci ad ogni gruppo o coppia di alunni i testi stampati (incluso il ritornello ripetuto) ed i blocchi funzione di base, ritagliati da Blocchi Blockly tradizionali (Corsi C-F) - Scheda da ritagliare. Vedi il suggerimento della lezione per i dettagli.

Chiedi agli alunni di cancellare qualsiasi parte della canzone che può essere trasformata in una funzione (il ritornello è l'esempio tipico) e di inserirla nei blocchi funzione forniti. Gli alunni dovrebbero compilare la dichiarazione di funzione assegnando un nome ed inserendo le parole del testo da ripetere. Una volta completata la dichiarazione della funzione, chiedi agli alunni di compilare le chiamate di funzione e posizionarle sopra al testo barrato.

Una volta che ogni gruppo o coppia ha terminato, chiedi agli alunni dove hanno posizionato le funzioni e perché. Tutti hanno utilizzato la stessa funzione? Quante volte viene ripetuta quella funzione?

Anteprima degli esercizi online con tutta la classe

Scegli uno degli esercizi online di questa lezione del corso Corso E - Esercizi online - Sito web. Ti consigliamo il primo esercizio. Risolvi insieme alla classe l'esercizio senza usare le funzioni. Una volta ottenuta la soluzione, visualizzala alla LIM o comunque in modo che sia visibile a tutti, chiedendo alla classe di indicare il codice ripetuto. Chiedi alla classe come si potrebbe semplificare il programma.

Riscrivi il programma senza il codice ripetuto, ma lasciando uno spazio in quei punti. In quello/quegli spazi, richiama una funzione. Di lato, dichiara la funzione con un apposito blocco, come esemplificato nel suggerimento. Chiedi agli alunni come pensano che si comporterà ora il codice.

Apri un confronto con la classe sul perché le funzioni potrebbero essere utili nella programmazione. Invita gli studenti a discutere la differenza tra funzioni e cicli.

Attività principale (30 min)

Corso E - Esercizi online 2018 - Sito web

Gli alunni possono essere agevolati se inizialmente scrivono il codice senza usare le funzioni, passando poi ad individuare le istruzioni ripetute da inserire in una funzione. Se agli alunni non piace svolgere questa attività preliminare nello spazio di lavoro di Code.org, consigliamo di fornire carta e matite affinché possano scrivere (o disegnare) le loro idee.

Conclusione (15 min)

Diario di bordo

Far scrivere agli alunni ciò che hanno appreso, perché è utile e come si sentono al riguardo, può aiutare a consolidare le conoscenze acquisite oggi e a creare un riferimento da consultare in futuro.

Spunti per il diario di bordo

  • Di cosa trattava la lezione di oggi?
  • Come ti sei sentito durante la lezione di oggi?
  • Quali sono alcune differenze tra funzioni e cicli?
  • Abbozza un disegno che hai fatto oggi. Puoi scrivere il codice necessario per realizzarlo?
  • Disegna un'immagine che desideri creare con il codice. Ora prova a scrivere il codice necessario per realizzarla.

Approfondimenti

Disegna con le funzioni

Suddividi la classe in gruppi di 2-3 alunni. Chiedi a ogni gruppo di scrivere una funzione che disegna una qualche forma ed un programma che la utilizzi. A seconda della creatività o dell'interesse dei gruppi, potrebbe essere necessario assegnare agli alunni una forma da creare. Quando tutti i gruppi hanno terminato, chiedi loro di scambiarsi i programmi. Su un foglio a parte, ogni gruppo deve quindi disegnare quanto indicato dal programma ricevuto. I gruppi dovrebbero poi restituire i programmi ed i relativi disegni al gruppo originale.

Ogni gruppo ha ricevuto il disegno che si aspettava? In caso contrario, cosa è andato storto? Chiedi agli alunni di eseguire il processo di debugging e riprovare.

Standards Alignment

View full course alignment

CSTA K-12 Computer Science Standards (2017)

AP - Algoritmi e programmazione
  • 1B-AP-08 - Confronta e perfeziona più algoritmi per la stessa attività e determina quale è quello più adatto.
  • 1B-AP-11 - Scompone (suddivide) i problemi in sotto-problemi più piccoli e gestibili per facilitare il processo di sviluppo del programma.

Cross-curricular Opportunities

This list represents opportunities in this lesson to support standards in other content areas.

Competenze linguistiche

L - Lingua
  • 4.L.6 - Acquisire e utilizzare in modo accurato parole e frasi accademiche generali e frasi specifiche del settore, comprese quelle che segnalano azioni precise, emozioni o stati d'essere (ad esempio, interrogato, lamentato, balbettato) e che sono fondamentali per un particolare argomento (ad esempio
SL - Parlare e ascoltare
  • 4.SL.1 - Impegnarsi efficacemente in una serie di discussioni collaborative (in coppia, in gruppo e guidate dall'insegnante) con diversi compagni su argomenti e testi della quinta classe, basandosi sulle idee altrui ed esprimendo chiaramente le proprie.
  • 4.SL.1.a - Presentarsi alle discussioni preparato, dopo aver letto o studiato il materiale richiesto; attingere esplicitamente a quella preparazione e ad altre informazioni note sull'argomento per esplorare le idee in discussione.
  • 4.SL.4 - Riferire su un argomento o un testo, raccontare una storia o raccontare un'esperienza in modo organizzato, utilizzando fatti appropriati e dettagli pertinenti e descrittivi per supportare idee o temi principali; parlare chiaramente a un ritmo comprensibile.
  • 4.SL.6 - Distinguere tra contesti che richiedono un inglese formale (ad esempio, presentare idee) e situazioni in cui il discorso informale è appropriato (ad esempio, discussione in piccoli gruppi) usare l'inglese formale quando è appropriato per il compito e la situazione.

Competenze matematiche

G - Geometria
  • 4.G.1 - Disegnare punti, linee, segmenti di linea, raggi, angoli (destro, acuto, ottuso) e linee perpendicolari e parallele. Identificarli in figure bidimensionali.
  • 4.G.2 - Classificare le figure bidimensionali in base alla presenza o assenza di linee parallele o perpendicolari, o alla presenza o assenza di angoli di una dimensione specificata. Riconoscere i triangoli rettangoli come categoria e identifica i triangoli rettangoli.
  • 4.G.3 - Riconoscere una linea di simmetria per una figura bidimensionale come una linea attraverso la figura in modo che la figura possa essere piegata lungo la linea in parti corrispondenti. Identificare figure simmetriche e tracciare linee di simmetria.
MD - Misure e dati
  • 4.MD.3 - Applica le formule dell'area e del perimetro per i rettangoli nel mondo reale e nei problemi matematici. Ad esempio, trova la larghezza di una stanza rettangolare data l'area del pavimento e la lunghezza, visualizzando la formula dell'area come un'equazione di moltiplicazione con un
  • 4.MD.5 - Riconoscere gli angoli come forme geometriche che si formano ovunque due raggi condividano un punto finale comune e comprendere i concetti di misurazione degli angoli:
  • 4.MD.7 - Riconosce la misura dell'angolo come "somma". Quando un angolo viene scomposto in parti non sovrapposte, la misura angolare totale è la somma delle misure angolari delle parti. Risolve i problemi di addizione e sottrazione per trovare angoli sconosciuti su un diagramma...
NBT - Numeri e operazioni a base dieci
  • 4.NBT.4 - Moltiplicare in modo fluido numeri interi a più cifre utilizzando l'algoritmo standard.

Competenze scientifiche

ETS - Engineering in the Sciences
ETS1 - Progettazione
  • 3-5-ETS1-1 - Definire un semplice problema di progettazione che rifletta un'esigenza o un desiderio che includa criteri specifici per il successo e vincoli su materiali, tempi o costi.
  • 3-5-ETS1-2 - Generare e confrontare più possibili soluzioni a un problema in base alla probabilità che ciascuna soddisfi i criteri e i vincoli del problema.