1 L`AMBIENTE DI PROGRAMMAZIONE TURBO PASCAL

Transcript

1 L`AMBIENTE DI PROGRAMMAZIONE TURBO PASCAL
L’AMBIENTE DI PROGRAMMAZIONE TURBO PASCAL ......................................... 2
LE COMPONENTI DELL’AMBIENTE DI SVILUPPO ...................................................................... 2
La barra dei menu ............................................................................................................ 2
Il desktop o finestra attiva ................................................................................................ 4
La linea di stato ................................................................................................................ 4
Uso delle caselle di dialogo.............................................................................................. 4
REALIZZAZIONE DI UN PROGETTO NELL’AMBIENTE TURBO PASCAL ......... 5
AVVIAMENTO DELL’AMBIENTE .............................................................................................. 6
APERTURA DI UN NUOVO FILE O DI UNO GIÀ ESISTENTE .......................................................... 6
SCRITTURA E/O MODIFICA DEL CODICE SORGENTE ................................................................. 6
SALVATAGGIO DEL FILE CON IL CODICE SORGENTE ................................................................ 7
STAMPA DEL LISTATO ............................................................................................................ 7
COMPILAZIONE E COLLEGAMENTO ......................................................................................... 8
ESECUZIONE .......................................................................................................................... 9
VERIFICA E CORREZIONE DEGLI ERRORI ................................................................................. 9
Esecuzione step by step..................................................................................................... 9
Esecuzione con interruzioni............................................................................................ 10
Comandi per il debugging .............................................................................................. 10
USCITA DALL’AMBIENTE...................................................................................................... 11
1
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

L’ambiente di programmazione Turbo Pascal
Nei primi compilatori Pascal, il programmatore per passare dal progetto astratto al codice finale, aveva a disposizione un editor di testi, un compilatore, un linker e un debugger posti in
programmi eseguibili separati. L’attività del programmatore risultava quindi complessa a causa dei continui passaggi da un ambiente all’altro dei diversi strumenti software.
Per agevolare il lavoro dei programmatori, alcune aziende produttrici di software hanno avuto
l’idea di riunire tutti gli strumenti precedenti in un unico ambiente integrato per lo sviluppo
(IDE: Integrated Development Environment) di programmi. In un IDE il programmatore, senza mai uscire dall’ambiente, può:
‰ scrivere o richiamare un file sorgente;
‰ salvare il file sorgente in un file di testo;
‰ compilare il codice sorgente e collegarlo con altri sottoprogrammi;
‰ eseguire il programma finale;
‰ verificare nel codice la correttezza (testing) e correggere gli eventuali errori (debugging).
Il Turbo Pascal è un ambiente integrato per lo sviluppo di programmi scritti utilizzando il
linguaggio di programmazione Pascal.
L’ambiente di lavoro Turbo Pascal, prodotto dalla Borland, ha subito variazioni passando dalle diverse versioni dalla 1.0 fino alla 7.0, anche se le operazioni principali per la realizzazione
di un programma eseguibile restano però invariate da una versione all’altra. Nel seguito prenderemo come riferimento la versione 7.0.
Le componenti dell’ambiente di sviluppo
Per iniziare una sessione nell’ambiente di lavoro, nel sistema operativo MS-DOS (anche avviato con un
di Windows), si deve eseguire il programma TURBO.EXE
nel percorso dove è installato il programma Turbo Pascal, digitando:
L’ambiente di sviluppo è formato da tre parti grafiche:
‰ la barra dei menu;
‰ la finestra di edit o desktop (la scrivania);
‰ la linea di stato
come indicato nella figura seguente.
La barra dei menu
L’ambiente mette a disposizione del programmatore un insieme di comandi organizzati in
menu; ogni comando consente di effettuare una operazione quale, ad esempio, l’apertura di un
2
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

nuovo file sorgente o la compilazione del codice. L’insieme dei menu (gruppi di istruzioni)
costituisce la barra dei menu, come indicato nella figura successiva.
significa che prima di eseguire
Per convenzione se un comando termina con tre punti
l’operazione verrà visualizzata una finestra di dialogo dove il programmatore deve introdurre
alcuni dati necessari all’esecuzione dell’operazione stessa. Il simbolo
indica invece
l’apertura di un menu successivo “flottante” (popup menu).
I menu sono organizzati in modo da contenere tutti i comandi relativi ad una specifica parte
della fase di realizzazione di un progetto software; in particolare i menu riguardano:
Come fare per...
gestire i file contenenti i programmi sorgente.
utilizzare l’editor di testo interno all’ambiente per la creazione del codice sorgente.
compilare un programma sorgente.
eseguire un codice.
verificare e correggere un programma sorgente.
modificare alcune caratteristiche dell’ambiente di lavoro.
gestire più di un solo programma sorgente, posti in finestre di edit diverse.
avere un aiuto (help) sui comandi dell’ambiente o sul linguaggio.
Menu
File
Edit, Search
Compile
Run
Debug
Tools, Options
Window
Help
Tutte le operazioni possono essere effettuate con la tastiera oppure con il mouse. Per eseguire
una operazione si deve:
con la tastiera
selezionare un menu nella barra con il tasto
ALT seguito dalla lettera evidenziata (tasto
scorciatoia o di scelta rapida) nel menu stesso;
‰ con i tasti direzione, scegliere il comando nel
menu e premere RETURN.
con il mouse
fare clic sul menu nella barra per renderlo attivo;
‰ fare clic sul comando selezionato.
‰
‰
I comandi più frequenti possono essere eseguiti direttamente premendo il tasto funzione riportato nella barra di stato.
Ad esempio, F2 consente di salvare il codice sorgente attuale, F3 apre una finestra di dialogo
per caricare un nuovo file sorgente dal disco, mentre ALT+F9 esegue l’operazione di compilazione.
3
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

Il desktop o finestra attiva
Il programmatore può considerare l’ambiente Turbo Pascal come il tavolo della sua scrivania
di lavoro, con la differenza che invece di avere un foglio e una matita ha a sua disposizione lo
schermo del video, la tastiera ed eventualmente il mouse.
Il codice sorgente è scritto in una zona dello schermo denominata finestra (window) di edit.
Vi possono essere diverse finestre con programmi sorgenti differenti, ma soltanto quella che
appare in primo piano è attiva, ovvero riceve i comandi impartiti dal programmatore. Per passare da una finestra all’altra si utilizzano i comandi del menu Window. La figura seguente presenta le parti associate ad una finestra di edit dell’ambiente.
Le operazioni più frequenti in una finestra di edit sono effettuate in questo modo:
Come fare per...
aprire una finestra.
chiudere una finestra.
Comando o oggetto della finestra
Si preme F3 oppure si seleziona il comando File | Open.
Si preme ALT+F3 o si fa clic sulla casella di uscita della finestra stessa
.
passare da una finestra attiva Si sceglie Window | List o ALT seguito dal numero che individua ogni
finestra.
ad un’altra.
ridimensionare una finestra. Si seleziona il comando Window | Size o si usa il pulsante di zoom
.
Si fa “clic” sulle barre di scorrimento con il mouse oppure si usano i
spostarsi lungo la finestra.
tasti direzione.
La linea di stato
Il Turbo Pascal ha un suo stato, visualizzato sulla linea o barra di stato. Le informazioni contenute in questa linea variano sulla base delle azioni che il programmatore sta svolgendo; in
particolare la linea di stato contiene:
‰ i tasti funzione per la scelta rapida delle operazioni più frequenti;
‰ l’operazione che si sta svolgendo (edit, compilazione, ecc.);
‰ la descrizione del comando che si è selezionato, ad esempio:
Uso delle caselle di dialogo
Quando una operazione richiede per essere eseguita dei dati di ingresso (parametri e/o opzioni) aggiuntivi (simbolo
dopo il comando), questi sono introdotti dal programmatore mediante una finestra di dialogo.
4
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

Esempio
L’ambiente presenta la finestra di dialogo:
quando si seleziona il comando File | Save as... per salvare in un file di testo (non formattato)
il codice sorgente scritto nella finestra attiva.
L’uso di una finestra di dialogo avviene:
Come fare per...
spostarsi nella finestra di dialogo.
chiudere annullando l’operazione.
chiudere la finestra eseguendo
l’operazione con i dati digitati nelle caselle
di input.
Comando o oggetto della finestra di dialogo
Usare il mouse e fare clic nella casella di input scelta
oppure usare il tasto tabulatore TAB.
Selezionale il pulsante di azione Cancel.
Selezionale il pulsante di azione OK.
Realizzazione di un progetto nell’ambiente Turbo Pascal
Supponiamo di volere realizzare un programma eseguibile che stampi sullo schermo il mes. A tal fine, possiamo usare il seguente codice
saggio
sorgente:
PROGRAM PrimoProgramma;
CONST
Uscita = 'Entriamo nel mondo del Pascal!';
BEGIN
WRITELN(Uscita)
END.
Nel programma precedente:
‰ il modello dei dati è costituito solo dalla costante stringa Uscita;
‰ la parte eseguibile è formata dall’istruzione WRITELN, che visualizza sullo schermo il
contenuto della costante dichiarata nel modello dei dati.
Nell’ambiente Turbo Pascal per passare dal codice sorgente al programma finale eseguibile si
seguono le azioni:
1. avviamento dell'ambiente;
2. apertura di un nuovo file con il codice sorgente oppure di uno già esistente;
3. scrittura di un nuovo programma sorgente oppure modifica di un file già esistente;
4. salvataggio del nuovo codice, o delle modifiche, in un file di testo sul disco rigido o
flessibile;
5. eventuale stampa del listato del programma (per la documentazione);
5
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

6. compilazione e collegamento;
7. esecuzione del programma finale;
8. verifica (testing) e correzione degli errori (debugging);
9. uscita dall’ambiente Turbo Pascal.
Ognuna di queste operazioni è eseguita mediante opportuni comandi organizzati in modo logico nei menu dell’ambiente di sviluppo.
Avviamento dell’ambiente
Per avviare il programma si deve eseguire dalla linea del prompt di DOS il programma eseguibile TURBO.EXE.
Apertura di un nuovo file o di uno già esistente
Si utilizzano i comandi del menu File nel seguente modo:
Come fare per...
aprire una nuova finestra di testo.
aprire un file già esistente con il
codice sorgente.
Comando
Selezionare il comando File | New.
Eseguire il comando File | Open..., che con una finestra di dialogo richiede all’operatore di specificare il nome e il percorso
(unità e directory) dove è salvato il file.
Scrittura e/o modifica del codice sorgente
Il codice sorgente deve essere scritto nella finestra di editor attiva. I principali comandi per
l’edit di un file sorgente sono:
Come fare per...
introdurre una nuova linea.
passare dalla modalità inserimento
(Insert) a quella di sovrascrittura
(Overwrite) e viceversa.
indentare il testo.
annullare i risultati dell’ultimo comando eseguito.
muoversi lungo il testo.
Comando
Premere INVIO.
Premere il tasto INS.
Premere il tasto TAB.
Premere ALT+BACKSPACE oppure selezionare il comando Edit |
Undo (non fare).
Utilizzare i tasti direzione oppure con il mouse facendo clic sulle barre di scorrimento.
Con la tastiera: posizionarsi sul primo carattere e tenendo preselezionare un blocco di testo.
muto SHIFT spostarsi alla fine del blocco.
Con il mouse: fare clic sul primo carattere e trascinare il puntatore alla fine del blocco tenendo sempre premuto il tasto sinistro.
tagliare il blocco selezionato e co- Si prema SHIFT+DEL oppure si selezioni il comando Edit | Cut.
piarlo in un’area di memoria temporanea (clipboard).
cancellare un blocco selezionato. Premere CTRL+DEL oppure selezionare il comando Edit | Clear.
copiare il blocco selezionato nella Premere CTRL+INS oppure eseguire il comando Edit | Copy.
clipboard.
effettuare la ricerca di un testo nel Si selezioni il comando Search | Find... e si digiti nella successiva finestra di dialogo le parole cercate.
file.
6
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

Particolarmente utile è l’uso del tasto TAB che consente di spostare il cursore attivo di un numero di spazi definito. In tal modo, si possono far rientrare (indentare) le istruzioni all’interno
di una struttura di controllo, rendendo il codice sorgente più leggibile. Nel nostro esempio,
dopo la digitazione del programma sorgente, la finestra di edit appare nel seguente modo:
Salvataggio del file con il codice sorgente
Il programma sorgente deve essere salvato in modo permanente in un file di testo, di estensione PAS, con i comandi:
Come fare per...
Comando
salvare il codice sorgente in Selezionare il comando File | Save as..., che chiede all’operatore di
specificare il nome e il percorso dove memorizzare il nuovo file. Salun nuovo file.
vando il codice con nomi diversi, sempre con File | Save as..., si possono creare copie di riserva del medesimo file sorgente.
salvare le modifiche su un Eseguire il comando File | Save.
file già esistente.
E’ sempre conveniente organizzare i file su disco suddividendoli sulla base del tipo in
directory diverse.
Esempio
Tutti i file sorgenti possono essere memorizzati in una directory \SORGENTI, i file oggetto in
\OGGETTO, quelli eseguibili in \EXE, mentre tutti i file di Turbo Pascal possono essere posti
nella directory \BIN.
Nei menu delle diverse versioni di Turbo Pascal, è presente una opzione per selezionare i vari
percorsi per i diversi tipi di file; nella versione 7.0 il comando è Options | Directories...
Il programma sorgente dell’esempio è stato salvato con il comando File | Save as... con il nome PRIMO.PAS nella directory \TP7\SORGENTI\.
Dopo avere salvato o caricato un file già esistente, nella parte superiore della finestra di edit
compare il percorso e il nome del file che contiene il codice che si sta modificando.
In tal modo ogni finestra di edit è associata senza ambiguità ad un file sorgente Pascal.
Stampa del listato
E’ sempre conveniente conservare una copia del codice sorgente sia memorizzata su file sia
stampata su carta. Il comando Print del menu File stampa il listato del programma della finestra di edit sulla stampante collegata al calcolatore. Prima di effettuare una stampa si deve im7
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

postare il tipo di stampante disponibile all’interno dell’ambiente mediante la finestra di dialogo che si apre con l’opzione Printer setup... del menu File.
Compilazione e collegamento
Le operazioni di compilazione e di collegamento (linking) sono effettuate in modo automatico
all’interno dell’ambiente. Il programma eseguibile finale può avere due destinazioni:
‰ la memoria centrale;
‰ la memoria di massa, in genere il disco magnetico.
Quella predefinita è la memoria principale. Per modificare la destinazione si utilizza il comando Destination del menu Compile: in tal modo l’opzione
diventa
per indicare che il programma eseguibile sarà salvato sul disco.
Se si compila il programma finale in memoria, quando si chiude la sessione di lavoro, il programma è definitivamente perso, mentre se la destinazione è il disco esso verrà memorizzato
in modo permanente in un nuovo file eseguibile con lo stesso nome del programma sorgente,
ma con estensione EXE. Essendo la compilazione in memoria più veloce, è conveniente produrre il file eseguibile sul disco solo quando si è sicuri che il programma sorgente è privo di
errori.
Per compilare il codice sorgente della finestra di edit attiva si usa il comando Compile del
menu (omonimo) Compile oppure si digita la combinazione di tasti ALT+F9. Se non si sono
verificati errori durante l’operazione di compilazione e di collegamento viene visualizzata una
finestra di dialogo del tipo:
Viceversa il compilatore si arresta indicando al programmatore il primo punto dove è stato
trovato un errore. In alcuni casi, il compilatore “cerca di capire” il tipo di errore commesso e
fornisce quindi una indicazione sullo schermo.
Esempio
Se modifichiamo l’istruzione WRITELN in quella errata
la traduzione si arresta indicando il seguente errore:
che indica che si è utilizzato un comando non noto al compilatore (unknown).
8
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

Dopo la compilazione su disco, se si visualizza il contenuto della directory con il comando
DOS DIR si ottiene:
che dimostra la creazione del file con il programma eseguibile.
Esecuzione
Un programma può essere eseguito in due modi diversi, all’interno oppure all’esterno
dell’ambiente.
Il comando Run del menu Run (o CTRL+F9) effettua prima una compilazione e un linking del
codice sorgente contenuto nella finestra di edit ed in seguito lo esegue mediante il sistema operativo in una nuova finestra di output. Per visualizzare il contenuto di questa finestra si
deve digitare la combinazione di tasti ALT+F5, mentre per ritornare alla finestra di edit si deve
premere un tasto qualsiasi.
Se si è già eseguita una compilazione precedente e il codice non è stato modificato, questa istruzione non effettua nuovamente la traduzione mandando il programma direttamente in esecuzione. Nel nostro esempio, dopo avere eseguito il comando Run | Run dobbiamo digitare
ALT+F5 per visualizzare la finestra di output e quindi il risultato dell’esecuzione del programma:
Lo stesso programma, una volta compilato su disco, può essere eseguito con il DOS, digitando
al prompt dei comandi:
dopo essere usciti dall’ambiente Turbo Pascal.
Verifica e correzione degli errori
Il debugger dell'ambiente Turbo Pascal può funzionare in due modalità differenti denominate:
1. passo dopo passo (step by step);
2. con interruzioni (breakpoint).
Le modalità di esecuzione precedenti permettono al programmatore di analizzare il tracciato
del programma sorgente e del corrispondente algoritmo realizzato.
Esecuzione step by step
In questa modalità il programma è eseguito una linea alla volta, interrompendo il procedimento ad ogni passo, in modo che il programmatore possa controllare l’esecuzione tramite:
1. la visualizzazione del contenuto attuale delle variabili in quella linea;
2. la visualizzazione dell’output corrente del programma sullo schermo del video.
Il debugger del Turbo Pascal consente anche di modificare il valore delle variabili durante la
stessa esecuzione passo-passo.
9
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

Esecuzione con interruzioni
In questa modalità, il codice è eseguito fino ad un punto specifico, denominato di interruzione
(breakpoint) dove il programma si interrompe. Da questo punto in poi il programmatore può
scegliere se proseguire:
1. nel modo usuale, dopo avere controllato lo stato del programma e l’output sul video;
2. nella modalità step by step.
Questo modo di funzionamento è utile in tutti quei casi in cui si vuole ispezionare una specifica parte di codice, ad esempio, un richiamo ad un sottoprogramma e non l’intero modulo sorgente.
La visualizzazione del tracciato di un programma è una delle tecniche principali non solo per
l’attività di debugging, ma anche per l’apprendimento delle diverse tecniche di programmazione.
Comandi per il debugging
L’ambiente Turbo Pascal dispone di un programma di debug (integrato) che permette di realizzare le modalità di messa a punto analizzate in precedenza. Per il debugging si utilizzano i
seguenti comandi dell’ambiente:
Modalità step by step
Come fare per...
Comando dell’ambiente
Iniziare l’esecuzione step by Si utilizzano i comandi del menu Run:
‰ Step over (o tasto funzione F8) che esegue il programma una listep.
nea alla volta (dopo averlo compilato interamente in memoria
centrale) considerando i sottoprogrammi (procedure e funzioni)
come un unico passo;
‰ Trace into (o F7) che effettua il tracciamento sia del modulo
principale sia dei sottoprogrammi, dopo averli caricati in memoria.
Terminare la modalità debug. Si usa l’opzione Program reset del menu Run o CTRL+F2.
Proseguire un passo alla volta Nel menu Run, con il tasto funzione F7 (Trace) si esegue il tracciato
dell’intero programma avanzando, di una linea alla volta per ogni
nella modalità debug.
digitazione,
mentre con F8 (Step over) non si ha traccia
dell'esecuzione dei sottoprogrammi.
Modalità con interruzioni
Come fare per...
Comando dell’ambiente
Nel menu Debug, utilizzare le opzioni Breakpoints... o Add breaInserire un breakpoint
kpoint..., che aprono una finestra di dialogo in cui si può definire o
aggiungere un nuovo punto di interruzione tramite il suo numero di
linea nel codice sorgente.
Trasferire il controllo al brea- Utilizzare i comandi del menu Run, Go to cursor (F4) oppure Run
(CRTL+F9). Se non si sono definiti punti di interruzione, l’opzione
kpoint inserito
Go to cursor inizia l’esecuzione dalla linea della finestra di edit dove è posizionato il cursore attivo.
Nel Turbo Pascal lo stato del programma è presentato mediante alcune finestre aggiuntive diverse da quella di edit, contenente il codice sorgente.
Le informazioni per la messa a punto sono organizzate nelle seguenti finestre:
‰ di watch (di osservazione): consente di visualizzare il contenuto delle variabili aggiornato
al passo in cui è ferma l’esecuzione;
10
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

di output: presenta l’output sullo schermo utente, così come lo vedrebbe un operatore durante l’esecuzione effettiva;
‰ di chiamata di sottoprogrammi: visualizza la successione di tutte le chiamate a procedure e/o funzioni con il valore dei parametri reali. I richiami ai sottoprogrammi sono presentati in ordine di chiamata in una lista in cui l’ultima procedura ad essere richiamata è posta
in cima alla pila.
‰
Per la gestione dello stato del programma si usano i seguenti comandi dell’ambiente:
Come fare per...
Comando dell’ambiente
Visualizzare il valore delle va- Il comando Watch del menu Debug apre una finestra “sullo stato del
programma”, denominata Watches. Premendo dalla tastiera ENTER
riabili.
oppure facendo doppio click con il mouse all’interno di Watches, si
apre una finestra di dialogo per l’input dell’identificatore della
variabile che si desidera visualizzare durante l'esecuzione passopasso del codice.
Presentare la finestra con lo Premendo ATL+F5 si visualizza solo lo schermo utente, mentre con
l’opzione Output del menu Debug si apre la finestra di output conschermo utente.
temporaneamente a quella di edit.
Visualizzare le chiamate ai Il comando Call stack del menu Debug, apre una finestra con una lista delle chiamate a procedure e/o funzioni con i valori degli argosottoprogrammi.
menti reali passati al momento della chiamata.
Modificare i valori delle va- Il comando Evaluate/Modify..., nel menu Debug, permette di modificare i valori delle variabili anche durante l’esecuzione del programriabili.
ma oppure di definire nuove espressioni.
Uscita dall’ambiente
E’ possibile uscire dall’ambiente Turbo Pascal in modo:
‰ definitivo, ritornando al sistema operativo;
‰ momentaneo, per eseguire comandi DOS.
Il comando Exit del menu File consente di uscire dal programma e ritornare sotto il controllo
del sistema operativo. Se prima di uscire non si sono salvate su file le modifiche apportate ad
alcune finestre di edit, Turbo Pascal richiede all’operatore mediante una finestra di dialogo di
effettuare il salvataggio.
In alcuni casi, durante l’attività di codifica, è necessario eseguire alcuni comandi DOS. Ad esempio, per creare una nuova directory si dovrebbe salvare il proprio lavoro, uscire
dall’ambiente, creare la directory ed infine rientrare.
Turbo Pascal consente di uscire solo temporaneamente dall’ambiente per eseguire istruzioni
MS-DOS mediante il comando File | DOS shell. Questa istruzione apre una nuova finestra,
contenente l’interprete dei comandi DOS, nella quale si possono eseguire le istruzioni del sistema operativo, terminate le quali si può ritornare nell’ambiente digitando al prompt del comandi
Alcune delle fasi di realizzazione di un programma possono essere compiute direttamente con
il sistema operativo.
Esempio
E' possibile:
11
© 2003 RCS Scuola S.p.A. - Tramontana
IL PASCAL: Concetti di base del linguaggio

‰
visualizzare il file con il codice sorgente con il comando TYPE:
‰
modificare
il
file
con
l’Editor
;
‰ stampare il listato con l’istruzione PRINT:
12
di
DOS
digitando,
ad
esempio,
.