Impariamo a programmare i computer
 
Pier Luigi Farri
Giovanni Piotti
Sandro Sbroggiò

A Scuola con Visual Basic 2010 Express

Un manuale operativo di base, completo, con materali di supporto liberamente disponibili, per entrare programmando nello straordinario mondo della programmazione.

III edizione riveduta e corretta, Novembre 2012
Gli autori ringraziano:
Ambra e Giada Gucchierato, studentesse di informatica
Claudio Gucchierato, esperto di programmazione informatica, creatore - tra l'altro - del software Tutore Dàttilo
Massimo Borghesan, docente di informatica presso il Centro di Formazione Professionale di Rovigo
per i loro paziente e prezioso lavoro di revisione, di suggerimento e di controllo del manuale e dei materiali allegati.

Il manuale in formato .pdf e i relativi materiali, in versione completa e di libero utilizzo, sono disponibili sui CD-ROM con tutti i materiali di vbscuola che possono essere chiesti all'indirizzo materiali@vbscuola.it (il rimborso spese è di 16,00 euro, da versare con bonifico bancario dopo avere ricevuto i CD).

::: UN MANUALE PER INSEGNANTI E GENITORI

Il BASIC è uno dei linguaggi di programmazione dei computer più longevi e più diffusi: mentre sta per compiere 50 anni di vita, si ritiene che i suoi adepti siano tre milioni di programmatori, nel mondo.
Il suo studio è un'avventura affascinante che può coinvolgere insegnanti, genitori e alunni di tutte le scuole; è uno strumento di conoscenza dei meccanismi di funzionamento del computer e nello stesso tempo è uno strumento di educazione della mente alla precisione formale e al rigore logico.

Questo manuale è dedicato all'ultima edizione del linguaggio, Visual Basic 2010, nella versione Express, distribuita gratuitamente, in italiano.
Si compone di 40 capitoli, 1050 pagine, che illustrano le potenzialità del linguaggio rivolte in particolare alla creazione di software didattici multimediali, da utilizzare con computer da tavolo o lavagne multimediali, a scuola, nei laboratori di informatica o in famiglia.
Il manuale è stato ideato come strumento di autoformazione per lettrici e lettori che partano da zero, disponendo solo delle normali capacità di interagire con un computer e le sue periferiche.
A questo scopo, gli autori hanno adottato un metodo espositivo concreto e operativo mirato a trasmettere non solo la conoscenza della programmazione, ma soprattutto la voglia di programmare.
Il testo è illustrato da 500 immagini e accompagnato da 140 esercizi, con il supporto di tutti i materiali necessari per eseguire gli esercizi.

download del manuale

 

::: MATERIALI DI SUPPORTO

Per svolgere gli esercizi di A Scuola con Visual Basic 2010 Express è necessario disporre dei materiali contenuti in un pacchetto predisposto dagli autori del manuale.
Il pacchetto è un file eseguibile che provvede a creare, nella cartella Documenti, la cartella A scuola con VB 2010, che a sua volta contiene queste sottocartelle:
  • Applicazioni: contiene i sorgenti dei progetti completi illustrati nel manuale (Anagrafe alunni e Quiz matematico);
  • Audio: contiene alcuni suoni registrati in formato *.wav, utilizzati in alcuni esercizi;
  • Esercizi: contiene i file con le trascrizioni testuali degli esempi di codice utilizzati nel manuale, per eventuali operazioni di copia e incolla;
  • Immagini: contiene tutte le immagini e icone utilizzate negli esercizi;
  • Testi: contiene alcuni file di testo in formato .txt, soprattutto elenchi, utilizzati negli esercizi del manuale.
Tutti i materiali presenti in queste cartelle sono completi e di libero utilizzo.
Non è prevista una procedura per la loro disinstallazione; per eliminarli dal computer è necessario e sufficiente cancellare la cartella principale A scuola con VB 2010.

download dei materiali

 

::: SORGENTI

Ecco alcuni progetti completi e finiti, di libero utilizzo, da utilizzare come strumenti di studio e di approfondimento.
Sono forniti con i loro sorgenti, vale a dire con tutti i file e i listati necessari a farli funzionare in ambiente Visual Basic 2010.
I listati sono ampiamente commentati, in particolare nei punti critici.
Gli asterischi indicano il grado di difficoltà di un programma, dal livello base (*) al livello avanzato (****).

* I versi degli animali

Un programma per ascoltare, memorizzare e riconoscere i versi di trenta animali.
Il codice mostra, in particolare:
  • l'uso di liste di numeri e di stringhe;
  • il sorteggio di numeri casuali;
  • la lettura di elenchi di stringhe da file di testo esterni al programma;
  • l'uso di immagini e suoni esterni al programma.

** Visualizzatore di immagini e file

Il programma crea una finestra nella quale possono essere visualizzate le immagini presenti nel computer.
Consente anche di vedere in sequenza le immagini contenute in una cartella.
E' utilizzato nel progetto un UserControl (cioè un controllo che non fa parte della serie dei controlli standard di VB); il progetto mostra dove reperire e come impostare la proprietà nascosta DoubleBuffer di un controllo, per evitare sfarfallii dell'immagine.

* Puzzle

Il gioco scompone un'immagine in 24 tasselli.
Il giocatore deve ricomporre l'immagine originale cliccando e spostando i tasselli con il mouse.
Il progetto mostra, in particolare:
  • la gestione di un raggruppamento di 24 pulsanti;
  • operazioni grafiche con immagini;
  • riproduzione di file audio dalle risorse del programma.

** Scarabocchio

Un programma per disegnare sul monitor a mano libera, con il mouse.
Peculiarità del progetto:
  • usare una immagine virtuale e una superfice grafica associata;
  • assegnare una immagine bitmap al cursore;
  • utilizzare i menù come anteprime con miniature di immagini;
  • muovere un form senza la barra del titolo;
  • rilevare se il cursore si trova entro un determinato rettangolo.

*** Primi testi

Un elaboratore di testi che consente di scrivere testi variopinti, in caratteri e formati diversi.
Il codice mostra, in particolare:
  • l'uso delle molteplici potenzialità del controllo RichTextBox;
  • la progettazione della previsione di stampa e della stampa del testo mantenendone la formattazione (colori e formati) senza ricorrere a controlli esterni.

**** Tombola

Il gioco della tombola rivisitato in veste elettronica, con effetti grafici e audio.
Il progetto comprende:
  • il tabellone in cui sono visualizzati i numeri estratti (si tratta di un UserControl in cui sono disegnati dinamicamente i numeri estratti);
  • un timer per l'estrazione automatica dei numeri a intervalli definiti;
  • la generazione e stampa di cartelle;
  • numerose funzioni per la personalizzazione della grafica.

*** Slot machine

Riproduzione di una slot machine, con effetti grafici e audio.
Le immagini che scorrono sono disegnate entro tre rulli rotanti: si tratta di tre UserControl, cioè di tre controlli che non fanno parte dei controlli standard di VB, in cui scorrono senza interruzione le immagini dei frutti, preventivamente caricate.

**** Media player

Il programma si avvale della classe WindowsMediaPlayer per la riproduzione di file audio e video; i formati di file accettati dal programma dipendono dai codec presenti nel sistema in uso.
Per il supporto ai filmati il progetto si avvale di un controllo WPF in cui vengono proiettati i filmati, in modo da svincolare il programma dall'interfacia di WindowsMediaPlayer; a rale scopo è stato necessario importare nel progetto alcuni riferimenti assenti in un normale progetto VB (l'elenco è riportato nelle proprietà del progetto).
Altre caratteristiche del progetto sono:
  • estrazione dell'icona associata al tipo di file;
  • ricerca ricorsiva entro un dato percorso senza bloccare l'interfaccia del programma;
  • disegno di una scritta con effetto ombra;
  • disegno personalizzato degli item di un controllo ListBox.

* Calcolatrice

Il programma riproduce le principali funzioni di una calcolatrice da tavolo munita di rotolo di carta; qui i calcoli vengono mostrati in un TextBox che ne fa le veci.
I pulsanti della calcolatrice sono degli UserControl (controlli che non fanno parte dei controlli standard di VB), creati per ottenere l'effetto delle sfumature di colori, riutilizzabili in qualunque altro progetto.
La sfumatura dei colori nel controllo Label che funge da display è ottenuta invece con l'evento Paint della stessa Label.
Tutti i controlli sono contenuti in un TableLayoutPanel, diviso in righe e colonne; i controlli che occupano più righe o/e colonne all'interno del TableLayoutPanel hanno le proprietà Row, RowSpan e Column, ColumnSpan impostate secondo le esigenze.

*** SuperEnalotto

Riproduzione delle schedine per giocare al SuperEnalotto.
Il programma consente al giocatore di scegliere alcuni numeri preferiti, magari consultando la smorfia napoletana affiancata alle schedine e consente di escludere dal sorteggio i numeri non graditi.
Compiute queste operazioni, il programma sorteggia 6 numeri per ogni schedina, con l'aggiunta di un numero stella.
Dal punto di vista tecnico, il codice contiene un UserControl (un controllo che non fa parte dei controlli standard di VB), creato per disegnare e gestire i numeri delle schedine.
Contiene inoltre una lista con 90 immagini in miniatura che sono ricavate da un'unica immagine che si trova nelle risorse.