Document ID: /fineweb-2-swissfilter-quality_10-filterrobots/filtered/01261.jsonl.gz/680

In questa attività ti confronterai con il programma che crea la semplice casetta qui sotto:
Lo scopo dell'attività è quello di comprendere quali parti compongono il programma che crea la grafica della casetta, così da poter applicare le conoscenze alla creazione delle grafiche delle bandiere (e non solo...).
Con questa attività apprenderai:
La casetta oggetto di questa attività appare molto semplice, e sicuramente ti sarai già fatto un'idea di come potrebbe essere realizzata.
Ecco il codice completo per la creazione della casetta (prova a eseguirlo per verificare se fa quello che ci si aspetta!):
Nel codice per la creazione della casetta sono presenti molte righe e istruzioni: sicuramente molte di più di quelle che ci si aspetterebbe di usare per una grafica così semplice.
Cercheremo ora di capire a cosa servono!
La prima riga che incontriamo è la seguente:
Questa riga ha lo scopo di rendere disponibili le istruzioni della libreria PyTamaro che intendiamo utilizzare nel nostro programma. Se provassimo ad eseguire il programma senza questa istruzione otterremmo un errore, dato che il computer non conoscerebbe le istruzioni rettangolo, triangolo, sopra, ecc.
Sarà quindi fondamentale ricordarsi di aggiungere a questa riga le istruzioni della libreria che intendiamo utilizzare. Sarà invece una buona abitudine cancellare da questa riga eventuali istruzioni che non abbiamo utilizzato, ma che magari avevamo inserito inizialmente.
Nota: i comandi che importiamo dalla libreria PyTamaro sono in italiano, perché in realtà utilizziamo la versione italiana della libreria (pytamaro.it): questo non è per forza possibile con altre librerie.
Come riga finale abbiamo invece:
Questa riga include un'istruzione della libreria PyTamaro, che abbiamo importato in precedenza. Il compito che questa istruzione svolge è quello di visualizzare la grafica che forniamo tra parentesi tonde, sullo schermo. In questo caso l'effetto sarà quindi quello di mostrare la grafica che abbiamo chiamato casetta.
Nota: possiamo visualizzare solo una grafica per volta!
Prendiamo ora come esempio la creazione del tetto della casa, che avviene utilizzando l'istruzione
triangolo:
Questa istruzione è composta da due parti, che sono separate dal carattere
=:
triangolo(200, 200, 60, rosso), serve a creare la forma primitiva, ovvero il triangolo con due lati lunghi 200, l'angolo tra questi due lati di 60 gradi (per creare quindi un triangolo equilatero) e di colore rosso;
In pratica il computer esegue prima la parte a sinistra dell'uguale (
=), creando il triangolo rosso e poi assegna il nome "tetto" a questo triangolo (in gergo informatico stiamo assegnando un valore, la grafica del triangolo, alla variabile di nome "tetto"). Il carattere
= è infatti un operatore che permette di effettuare un assegnamento, ovvero assegnare un valore ad un nome.
Perché è utile definire i nomi invece di utilizzare direttamente la grafica che creiamo? Ecco qualche motivo: innanzitutto possiamo creare una grafica ma utilizzarla solo più avanti, semplicemente "chiamandola" per nome. In secondo luogo possiamo anche utilizzare la stessa grafica più volte, senza doverla ricreare (supponi di aver bisogno di un secondo tetto identico, ti basterebbe richiamarlo con il nome tetto). Infine, utilizzando i nomi, il nostro codice sarà più leggibile da noi e dai nostri colleghi programmatori.
Ragiona ora sulla riga seguente:
Dovresti aver scritto che l'istruzione
sopra riceve come argomenti le due grafiche a cui abbiamo assegnato il nome
tetto, rispettivamente
parete, e produce una grafica a cui viene assegnato un nuovo nome,
casetta. Se ci pensiamo questo ha senso: la casetta è infatti "costruita" disponendo il tetto sopra alla parete.
Immagina di voler creare la grafica della casetta, ma con dimensioni maggiori, ad esempio con larghezza pari a 300, mantenendo però le stesse proporzioni. Prova a modificare il codice in modo che venga creata questa casa più grande:
E se invece tu volessi una casa larga 250? O larga 100? Oppure larga 230?
Nonostante il codice sia semplice, per ciascuna di queste larghezze dovresti modificare il tuo codice in svariati punti!
Esiste però la possibilità di rendere il codice più "generale", se definiamo un nuovo nome per la larghezza della casa, che utilizzeremo al posto di inserire il valore direttamente nelle righe successive. Ci basterà così modificare solo il valore del nome LARGHEZZA (come un "parametro") per ottenere una casa più grande o più piccola.
Ecco qui sotto il nuovo nome
LARGHEZZA a cui abbiamo assegnato, per ora, il valore 200:
In questa attività hai imparato a importare i nomi delle istruzioni da una libreria, così da poterli utilizzare nel tuo programma.
Hai poi appreso l'istruzione che serve a visualizzare la grafica: si tratta di un'istruzione che hai importato prima dalla libreria PyTamaro.
Hai infine imparato a definire dei nuovi nomi associandoli qui a delle grafiche appena create, come pure ad utilizzare questi nomi per richiamare le grafiche e ricombinarle successivamente.
L'ultimo passaggio di questa attività ti ha poi permesso di parametrizzare il programma per la creazione della casetta, in modo che sia più semplice cambiarne le dimensioni mantenendo però le proporzioni.
Casetta