Python è un linguaggio di programmazione. Distinguerei due tipologie fondamentali di linguaggi (se ne possono fare di molti tipi) ma la prima, per chi ne ha visti di linguaggi, è tra quelli che hanno la necessità di un compilatore (Pascal, C, C++, Fortran) e quelli interpretati. Tra questi ricade sicuramente Python. La differenza macroscopica è il tempo di esecuzione del relativo codice.
Per chi è alle prime armi con la programmazione imbattersi in un programma interpretato ha dei vantaggi sicuramente in termini di praticità nel senso che non serve avere un editor dedicato ed un programma di compilazione con tutte le difficoltà del caso (innumerevoli parametri per una compilazione efficace).
Avevo cominciato a programmare in Fortan 77 (Formula Translator) ed ho ancora il relativo libro, nelle aule Taliercio dell’Università di Padova; faceva delle stampe meravigliose peccato che, per essere eseguito, richiedeva due cicli di compilazione! Si programmava ancora su quei bellisismi video a fosfori verdi e, dopo circa un’ora di sudato lavoro, si riusciva ad avere il primo programma compilato che magari stampava solo la parola “ciao”.
In seguito mi sono imbattutto nel Pascal per il primo esame di elaborazione (esame di elaborazione dati e programmazione) quindi in C per l’esame di elaborazione II, poi in assembler (esame di calcolatori elettronici) e poi in C++ per tutti gli esami successivi e per la tesi. Poi, lavorando, mi sono imbattuto nel Cobol che macinava migliaia di dati riposti su database in tempi incredibilmente bassi per poi scoprire nei primi nel 1994 l’html.
Con l’html mi sono divertito a fare l’intero sito della Capitaneria di Porto di Venezia durante il militare con grande meraviglia dell’allora Ammiraglio che credeva ancora impossibilie la gestione dell’attività portuale tramite dei PC in rete.
Per i programmatori esperti o puristi della programmazione l’uso della memoria è un bene prezioso sia in termini di esecuzione del programma che si spazio del programma stesso.
Una delle prime cose che balza all’occhio è proprio la mancanza della possibilità della definizione delle variabili in termini di tipo di varibili. Per i programmatori più esperti ogni varibile deve essere definita in una parte del programma ed opportunamente associata al tipo di tato che dovrà contenere.
Un esempio? Se devo fare un programma che serve per effettuare delle operazioni con dei numeri interi è sufficiente definire delle variabili di tipo integer o se devo fare un programma per la gestione delle stringhe allora le definisco di tipo string.
Tutta questa apparente complicazione è presente in C++, in Pascal o Delphy come in Cobol (quest’ultimo molto osteggiato dai programmatori più esperti ma ancora molto usato nei programmi gestionali) ed è molto piacevole per tenere perfettamente sotto controllo il flusso del programma.
La cosa più importante per chi desidera comunque imparare a programmare è tener conto di tale fatto e cercare di mantenere, anche se non esplicitandolo, la struttura che ha messo le basi alla programmazione di ultima generazione.