Dopo aver dato una panoramica generica, entriamo nelle basi di programmazione vere e proprie.
Che cosa sono le variabili?Possiamo considerare una variabile come una scatola in cui possiamo inserire il contenuto che vogliamo.Le variabili hanno un
nome, anche detto
identificatore (l’etichetta sulla scatola) e un
valore (il contenuto).
Ma perchè utilizzare le variabili?Moltissimi studenti alle prime armi con l’informatica scrivono il bel programmino per trovare l’area del rettangolo che esegue la moltiplicazione tra 2 e 3 e la stampa a schermo.
In questo caso possiamo utilizzare questo programma in un solo caso: se dobbiamo calcolare l’area di un rettangolo di base 2 e altezza 3 o viceversa.
Se invece scrivessimo un programma che moltiplica due variabili, potremmo ottenere l’area di qualsiasi rettangolo.
Ma se le variabili sono scatole vuote cosa moltiplichiamo?
Prima di eseguire la moltiplicazione chiediamo all’utente di darci i due numeri da moltiplicare salvandoli nelle variabili e solo dopo moltiplicheremo le due variabili.
Le variabili ci permettono quindi l’astrazione dal valore contenuto cioè ci permettono di considerare un nome invece di un valore.
Perchè si chiamano variabili?Le variabili si chiamano variabili perchè possono variare.
Infatti, durante un programma
il valore di una variabile può essere cambiato tramite un’operazione detta
assegnazione.
L’assegnazione non è altro che l’inserimento di un valore nella nostra scatola.
La prima assegnazione (quando la scatola è vuota) viene anche chiamata
inizializzazione.
Molti linguaggi di programmazione obbligano di inizializzare le variabili, altrimenti non sarà possibile utilizzarle.
Le costantiLe costanti sono variabili il cui valore non può essere modificato. Una volta inizializzate il valore rimarrà quello per tutta l’esecuzione del programma.
Tipi di datiCome ci sono scatole di diverse forme, esistono anche variabili di diverse forme in cui possiamo inserire solo un contenuto con una forma identica.
Se proviamo ad inserire contenuto che non ci và, o perchè è troppo grosso o perchè ha una forma diversa, come non riusciremmo ad inserirlo in una scatola, non riusciremmo ad inserirlo nemmeno in una variabile.
Vediamo i principali contenuti che possiamo inserire:
-
Numeri interiQuelli appartenenti all’
insieme Z. Quindi, per intenderci, tutti i numeri naturali positivi e negativi (…, -3, -2, -1, 0, +1, +2, +3, …)
-
Numeri con la virgola o realiTutti i numeri appartenenti all’
insieme R. In pratica, tutti i numeri positivi e negativi con la virgola.
-
BooleaniPuò assumere due valori: TRUE o FALSE, ovvero VERO o FALSO. Non tutti i linguaggi dispongono di questi valori, che vengono sostituiti da 0 (FALSE) e 1 (TRUE).
-
Caratteri e stringheIl carattere è un singolo carattere: a, b, 1, 2, ecc. Qualunque carattere.
La stringa invece di solito non viene considerato come un tipo di dato, bensì come un insieme di caratteri (dove sta la differenza dite voi?, ve lo spiegherò nelle prossime lezioni, continuate a seguirci!). Comunque sarebbe una frase.
Se
dichiariamo (altro termine) una variabile di tipo booleano e proviamo a metterci dentro un numero, riceveremo un errore.
EfficienzaMa perchè tutte queste complicazioni? Non esiste una scatola di gomma?
Torniamo al nostro esempio: avendo tutte scatole di una forma conosciuta possiamo riporle in uno scaffale in modo molto ordinato, risparmiando spazio (memoria RAM). Mettiamo di avere delle scatole di gomma estendibili. Possiamo metterci dentro qualsiasi cosa, ma poi non possiamo ordinarle bene e quindi sprechiamo spazio.
La maggior parte dei linguaggi di programmazione ha uno stretto
controllo sui tipi (cioè le scatole dure) mentre alcuni (come il PHP) ha uno scarso controllo sui tipi.
Oltre all’efficienza il controllo sui tipi permette una maggiore sicurezza evitando di incorrere in stupidi errori, il tutto a discapito della semplicità.
Lezione precedente ● Lezione successiva