Informatica Scratch: Linguaggio di programmazione

Scratch è un ambiente di programmazione gratuito, con un linguaggio di programmazione di tipo grafico.

Tale linguaggio, ispirato alla teoria costruzionista dell'apprendimento e progettato per l'insegnamento della programmazione tramite primitive visive, è adatto a studenti, insegnanti e genitori ed è utilizzabile per progetti pedagogici e di intrattenimento che spaziano dalla matematica alla scienza, consentendo la realizzazione di simulazioni, visualizzazione di esperimenti, animazioni, musica, arte interattiva e semplici giochi.

Scratch
linguaggio di programmazione
Informatica Scratch: Storia, Descrizione, Comunità
AutoreMitchel Resnick
Data di origine2006
Ultima versione3.0
UtilizzoEducativo
ParadigmiProgrammazione a eventi, Programmazione imperativa
Tipizzazionedinamica
Estensioni comuni.sb (Scratch 1.4 e versioni precedenti), .sb2 (Scratch 2.0), .sb3 (Scratch 3.0)
Influenzato daLogo, Smalltalk, HyperCard, StarLogo, AgentSheets, Etoys
Ha influenzatoPocket Code
Implementazione di riferimento
Sistema operativoWindows, macOS e GNU/Linux
LicenzaGPLv2 e Scratch Source Code License
Sito webscratch.mit.edu

Storia

Il gruppo Lifelong Kindergarten del MIT Media Lab, guidato da Mitchel Resnick, e la sua società di consulenza, Playful Invention Company, con sede a Montreal, co-finanziato da quest'ultimo con Brian Silverman e Paula Bonta, ha sviluppato la prima versione desktop di Scratch nel 2003. Dal 2007, i progetti possono essere condivisi online con altri utenti, i quali possono apportare modifiche in modo cooperativo.

Il nome deriva dalla omonima tecnica dello scratch usata dagli artisti del giradischi, i turntablist, alludendo alla facilità con cui è possibile missare e remixare i progetti Scratch.

Da questa base si sono sviluppate altri progetti, per esempio Snap!, per aggiungere altre funzionalità non presenti nella versione di Scratch.

Con l'introduzione della versione 2.0 di Scratch, avvenuta il 9 maggio 2013, è diventato possibile definire blocchi utente all'interno di un progetto. Inoltre, da questa data, il sito di Scratch viene rinnovato graficamente e fornisce un editor online che consente di creare e modificare i progetti direttamente sul sito. Sia la versione offline che quella online richiedono il supporto della tecnologia Adobe Flash.

Una variante di Scratch per bambini da 5 a 7 anni è stata sviluppata sotto il nome di ScratchJr e rilasciata nel 2014.

La terza versione di Scratch è stata annunciata nel 2016 e rilasciata il 2 gennaio 2019. Questa versione è la prima compatibile anche con la maggior parte dei dispositivi mobili, in quanto è stata sviluppata in HTML5 e JavaScript.

Descrizione

Linguaggio

Informatica Scratch: Storia, Descrizione, Comunità 
Esempio di script con tre blocchi che esegue Hello, World!

Scratch prevede un approccio orientato agli oggetti (denominati Sprite) ed un linguaggio di programmazione che consente di elaborare storie interattive, giochi, animazioni, arte e musica. Inoltre permette di condividere i progetti con altri utenti del web.L'idea di questo linguaggio è che anche i bambini o le persone inesperte di linguaggi di programmazione possono imparare importanti concetti di calcolo matematico, a ragionare in modo sistematico, a pensare in modo creativo e a lavorare in gruppo. Le istruzioni fondamentali del linguaggio di Scratch sono implementate in blocchi colorati creati per agganciarsi l'un l'altro e formare delle colonne. Ognuna di queste colonne di blocchi viene chiamata script e fanno parte del codice vero e proprio che viene interpretato dalla macchina.

Categoria Note    Categoria Note
  Movimento Muove gli Sprite e cambia gli angoli   Situazioni Blocchi di gestione degli eventi e da porre come testata.
  Aspetto Controlla la visibilità, i costumi e l'output   Controllo Istruzioni se e strutture ciclo/loop
  Suono Esegue brani audio e sequenze audio programmabili. Su Scratch 3 alcuni blocchi si trovano in un'estensione.   Sensori Sensori per gli Sprite e input utente. La stessa cosa di Suono alcuni blocchi oggi sono estensioni
  Penna Supporto al disegno e alla grafica (Dalla versione 3.0 questa categoria non è automaticamente presente, in quanto va aggiunta manualmente dalla sezione "Estensioni")   Operatori Operatori matematici e booleani.
  Variabili e liste Uso di variabili e assegnazione di valori   Altri blocchi Procedure personalizzate (funzioni) e controllo di periferiche.

Ambiente

L'ambiente Scratch è disponibile sia via web, sul sito scratch.mit.edu sia come software utilizzabile offline, chiamato Scratch Desktop, disponibile per le piattaforme Windows, MacOS. Al momento non esiste una versione ufficiale di Scratch Desktop per GNU/Linux. L'ultima versione stabile è la versione 3.6.0. pubblicata nel 2019.

Interfaccia utente

L'area posta in alto a sinistra è il palcoscenico o "stage area", dove compaiono i risultati e il codice prende vita mentre gli Sprite, gli oggetti grafici su cui agisce il codice, sono elencati in basso. Gli sprite compaiono anche sullo Stage, che viene considerato uno sprite.

Differenze tra sprite e Stage

Gli sprite possono apparire sullo Stage ma non su altri sprite

• I "Costumi" dello Stage sono chiamati Sfondi

• Lo Stage non si può duplicare, eliminare o clonare

• Lo Stage non ha coordinate e dimensione

Selezionando uno Sprite è possibile associarvi i blocchi di codice, selezionabili dall'area Script, dove sono raggruppati per argomento, trascinandoli nell'area del codice. Se uno Sprite ha associato del codice questo viene visualizzato nell'area a destra ed è possibile modificarlo. Qualsiasi blocco può essere provato con un doppio clic in modo da vederne in anteprima l'azione.

A lato della cartella Script, ve ne sono altre due per Costumi (sullo Stage diventa Sfondi) e Suoni. Una barra espandibile a destra è dedicata alla guida.

Le aree sono state riorganizzate nella versione 2.0.

Comunità

Lo slogan della comunità online di Scratch recita "Immagina, Programma, Condividi", sottolineando l'importanza della condivisione e degli aspetti sociali della creatività nella filosofia alla base di Scratch.

I progetti Scratch, essendo a codice aperto, sono liberamente modificabili e utilizzabili per creare nuovi progetti. I progetti possono essere inviati direttamente dal programma al sito web di Scratch, e qualsiasi membro della comunità può scaricarne il codice per studiarlo o modificarlo in un nuovo progetto. I membri possono inoltre creare gallerie di progetti, commentare, taggare e aggiungere ai preferiti. Tutti i progetti sul sito sono condivisi con licenza Creative Commons "Share-Alike" e riprodotti su un browser (utilizzando Flash Player).

Il sito web riceve quasi 10 milioni di visite al mese e al 2 gennaio 2013 i membri registrati sono 1.349.093 (di cui 402.697 hanno condiviso progetti), per un totale di più di 4.200.000 progetti condivisi (più di un progetto inviato al minuto). Il sito web organizza periodicamente il "Scratch Design Studio", competizione per incoraggiare la creazione e condivisione di progetti dalla grafica elementare.

Nel 2008, la piattaforma della comunità online di Scratch (denominata "ScratchR") ha ricevuto una menzione onoraria all'Ars Electronica Prix.

Esiste anche una comunità online per educatori, denominata ScratchEd.

Note

Voci correlate

Altri progetti

Collegamenti esterni

Controllo di autoritàLCCN (ENsh2008006648 · GND (DE7860906-9 · J9U (ENHE987007564120605171

Tags:

Informatica Scratch StoriaInformatica Scratch DescrizioneInformatica Scratch ComunitàInformatica Scratch NoteInformatica Scratch Voci correlateInformatica Scratch Altri progettiInformatica Scratch Collegamenti esterniInformatica ScratchAnimazioneArte interattivaCostruzionismo (teoria dell'apprendimento)EsperimentoGiocoInsegnantiIntrattenimentoLinguaggio di programmazioneMatematicaMusicaPedagogiaProgrammazione (informatica)ScienzaSimulazioneStudente

🔥 Trending searches on Wiki Italiano:

Sean ConneryNunzia De GirolamoPiero FerrariIKEADaniele De RossiOmen - L'origine del presagioAnniversario di matrimonioOmicidio di Junko FurutaSignora VolpeJosip IličićEmilia-RomagnaStrage di MarzabottoRoberto BaggioPapa FrancescoBack to Black (film)M. Gli ultimi giorni dell'EuropaRiccardo PatreseClaudia PandolfiIsole CanarieHercai - Amore e vendettaMonica MaggioniGiusy BuscemiWalter NudoThe Beekeeper (film)Juventus Football ClubJames CaanGeorge Villiers, I duca di BuckinghamSalvatore RiinaThe Blair Witch Project - Il mistero della strega di BlairPaola CortellesiRenato ZeroDexter (serie televisiva)Generazione YHitler (famiglia)Aubrey PlazaCameron DiazNeymarValentino RossiKatie HolmesCampionato italiano di calcioNove (rete televisiva)Daniela SantanchèGiorgia MeloniJonathan NolanAnnalisa (cantante)Stefanos TsitsipasM. Il figlio del secoloPaesi BassiFallout (serie televisiva)Silvia ToffaninOppenheimer (film)Sagrada FamíliaEster PantanoJessica LangeCampionato del mondo endurance 2024RonaldoIndovina chi viene a Natale?Stan LaurelGigi RivaIsraeleRhea PerlmanFormula 1Dorian Gray (attrice)Giacomo I d'InghilterraIndiaThiago MottaFrancesca FagnaniGraffio di tigreTenerifePesachMassacro della Columbine High SchoolNBAHarry PotterSerie B 2023-2024Split (film 2016 Shyamalan)Maria Antonietta d'Asburgo-LorenaSilvana ManganoSimone AnnicchiaricoCarlos Sainz Jr.🡆 More