Page 174 - Rassegna 2018-2
P. 174
ATTUALITÀ E INFORMAZIONI
Come si può ben intuire tutte queste alternative, definite variabili di un
programma, possono essere di numero infinito e non è pensabile di poter gesti-
re all’interno di un software tutti i possibili eventi, con il risultato che maggiore è
il numero delle variabili introdotte e più complesso e sofisticato sarà il program-
ma, e con l’effetto di poter distinguere un prodotto/programma da altro ana-
logo proprio per le funzioni e per le alternative gestite.
Riprendendo ancora in esame il nostro programma e considerando il
passo 3, la fase di lavarsi, è stata posta nell’ordine temporale appena successiva
alla fase 2 (sceso dal letto), potremmo allora osservare che sia più igienico lavar-
si i denti dopo aver fatto colazione e NON appena scesi dal letto. In effetti, la
scelta di “dove e quando” eseguire un comando, è una valutazione totalmente
soggettiva che appartiene (e non dobbiamo dimenticarlo) a chi progetta il soft-
ware, anche se - in genere - viene assunta secondo regole dettate da una logica
comune dominante ben definita e dal buon senso, in modo da avere un flusso
di dati che faccia eseguire al meglio le singole funzioni al momento giusto, in
modo efficiente e con tutta la migliore efficacia di risultato rispetto al program-
ma. È venuto ora il momento di vedere più da vicino la figura del programma-
tore, per capire cosa fa e come, perché è lui che sta realizzando la “capacità pen-
sante” della macchina.
Abbiamo appena visto come il programmatore abbia fatto scelte sogget-
tive nella fase di analisi, peraltro proprio in passaggi fondamentali (quali la
sequenza temporale dei passi, le azioni da eseguire, gli imprevisti da valutare)
che finiscono, sotto altro profilo, per determinare la qualità del software realizza-
to.
In effetti ci sono molti altri parametri da considerare ai fini di un giudizio
compiuto sulla qualità del software, ma non è questa la sede per una disamina di
questo tipo. Ciò che però possiamo intanto affermare è che un programma è
frutto della mente di un essere umano che valuta situazioni e condizioni e cerca
di intuire tutti i possibili imprevisti e, per ogni condizione di possibile interru-
zione nel flusso di dati, cerca soluzioni alternative idonee al raggiungimento
dell’obiettivo che ci si è prefissati.
Si può quindi concludere che l’intera architettura è frutto di una mente
umana cosciente che, sfruttando un linguaggio di programmazione, definisce
regole, impartisce comandi, gestisce eccezioni ed evita in tutti i modi che pos-
sano generarsi degli errori, e tutto avviene utilizzando delle metodologie di pro-
grammazione che garantiscono efficienza e velocità di esecuzione.
Come in ogni prodotto dell’uomo, e in questo caso in particolare, la per-
fezione però non è di casa, la possibilità di escludere errori è ben lontana, e
174