Linguaggi di programmazione

Con questo articolo intendo descrivere brevemente le caratteristiche principali di alcuni linguaggi di programmazione in modo da fornirne, senza inutili pretese di completezza, una panoramica sintetica e schematica.

BASIC

Il BASIC fu uno dei primi linguaggi creati, ed uno dei pochi ad essere ancora massicciamente utilizzato ad oltre 40 anni dalla sua comparsa. Un po' per la sua semplicità, un po' per l'affetto che lo lega alla comunità informatica, è un dato di fatto che la maggior parte dei programmatori inizi a scrivere codice buttando giù qualche riga di BASIC.

Nonostante questo, bisogna dire che, pur essendosi continuamente evoluto negli anni, la sua sintassi resta ancora “vecchia”, e che, più in generale, il BASIC resta un linguaggio “amatoriale”, che difficilmente trova applicazione in contesti più seri di quello casalingo. Per questi motivi se si vuole iniziare seriamente a programmare è preferibile scegliere un linguaggio un po' più moderno (vedi Python).

C/C++

Si può dire senza timore che il C (e derivati) è il linguaggio di programmazione attualmente più utilizzato dagli sviluppatori professionisti. Caratterizzato da precisione, rigore e straordinaria efficienza, è un linguaggio che qualsiasi programmatore deve conoscere, per diversi motivi:

  1. Il C permette di risolvere efficacemente qualsiasi problema (informatico, naturalmente...).
  2. Programmare in C costringe a sviluppare un atteggiamento rigoroso e logico nei confronti della programmazione stessa (e non solo!).
  3. Praticamente ogni altro linguaggio moderno di larga diffusione adotta gli schemi tipici del C: una base di C è essenziale per capire la moderna programmazione.

Tutto ciò a condizione che lo studente sappia dedicare allo studio impegno e concentrazione: programmare in C non è un gioco!

Pascal

Nato, negli anni '70, come strumento didattico per unire la semplicità dei linguaggi ad alto livello (come il BASIC) alle potenzialità di linguaggi più complessi, oggi trova applicazione praticamente solo tra i programmi didattici di alcune scuole superiori. Il Pascal è comunque uno strumento interessante e completo, con cui è possibile raggiungere risultati di alto livello, come dimostra la comunità riunita attorno a http://www.freepascal.org/.

Python

Python è un linguaggio moderno, ad alto livello, multi-paradigma, ricco di funzioni, molto flessibile e pensato per essere eseguito da un interprete di comandi. Questo significa che:

  1. Trova applicazione pressoché ovunque, da piccoli script “da studio”, alle applicazioni web, fino a veri e propri programmi, con interfaccia grafica e tutto il resto.

  2. È pensato per agevolare il programmatore nel suo compito.

  3. È facile da imparare: anche chi non ha mai programmato potrà sperimentare l'ebbrezza di veder funzionare un programma in 15 secondi.

Tutte queste caratteristiche lo rendono particolarmente adatto come primo linguaggio per chi vuole “sperimentare” l'arte della programmazione. Segnalo l'esistenza, a riprova della sua flessibilità, di un interprete online di comandi Python: http://try-python.mired.org/.

Java

A metà degli anni '90 l'azienda americana Sun decise di sviluppare un linguaggio, completamente orientato agli oggetti, che fosse adatto per lo scambio di software attraverso Internet. Perché ciò sia possibile è necessario tanto che il programma in sé possa essere eseguito su macchine e sistemi operativi differenti (che sia, quindi, portabile), quanto che ogni software possa essere racchiuso in pacchetticomodi da inviare via rete (che quindi non necessitano di installazione).

Unico nel suo genere, Java permette di fare tutto questo e rappresenta un must quando si parla di OOP (Object Oriented Programming)... ma spesso se ne sente parlare anche per alcune sue caratteristiche che lo rendono piuttosto lento e “grezzo” nelle interfacce.

PHP

Il PHP rappresenta un caso anomalo rispetto ai linguaggi precedenti, in quanto si tratta di un particolare tipo di scripting, detto server-side. Questo significa che un programma/script PHP non risiede sul computer dell'utente, ma su una macchina remota (il server); è l'utente a dover richiedere l'esecuzione dello script al server, che come risposta ne invierà l'output. Potrebbe sorgere la domanda: ma se la macchina che esegue il programma non è la mia, come fa questo programma ad “aprirsi”? Semplice: gli script PHP sono fatti per produrre codice HTML, che, una volta ricevuto, viene visualizzato da un browser web, come Firefox.

Non essendo il PHP un vero e proprio linguaggio di programmazione, le sue regole sono piuttosto blande e permissive: da un lato questo agevola i programmatori esperti (vedi C), ma dall'altro può in un certo senso “traviare” chi pensa con esso di iniziare a programmare.

Conclusioni

Spero a questo punto che il lettore possa aver acquisito una migliore coscienza in merito alla programmazione e, perché no, una qualche simpatia per qualcuno dei linguaggi da me presentati, che possa (esortativo!) invogliarlo ad intraprenderne lo studio.