Dieci linguaggi [di programmazione] per me…

Stavo discutendo con una amica che lavora come docente di informatica nelle scuole superiori. Si lamentava che non potesse ricevere il punteggio “bonus” dovuto al possesso dell’ECDL nonostante, per legge, potesse tranquillamente tenere i corsi e far svolgere gli esami per il conseguimento. E, nella discussione, ha anche affermato che “conosco dieci (0x0A) linguaggi di programmazione(1) visto che gli ho dovuti insegnare nei miei corsi”…

La storia dei dieci linguaggi è emblematica di come molti docenti intendano la programmazione come la mera conoscenza della sintassi del linguaggio scelto. Cioè se io conosco la sintassi del while in php allora conosco il php. Purtroppo non è così, il saper programmare è un qualcosa che dipende poco dal linguaggio di programmazione scelto, è la capacità di pensare la sequenza di algoritmi per arrivare alla soluzione del problema e trasformarli in istruzioni chiare per ottenere il risultato atteso. Il tradurre tali istruzioni poi nella sintassi del linguaggio di programmazione è un passo abbastanza semplice.
Sì, certi linguaggi possono facilitare lo svolgimento di alcuni compiti, ad esempio il C rende facilissimo lo spararsi in un piede 🙂 e il C++ di riusare il proiettile per spararsi all’altro >:-D o il PERL per scrivere codice funzionante ma inmantenibile, ma ciò che conta non è tanto la sintassi del linguaggio quanto il saper programmare. Per il teorema di Bohm e Jacopini qualunque algoritmo può essere implementato usando solo tre strutture di controllo: la sequenza, la selezione e il ciclo, il linguaggio al più può metterti a disposizione scorciatoie o sistemi per rendere più robusto il codice (programmazione ad oggetti) ma l’importante è l’algoritmo non il linguaggio nel quale tale algoritmo verrà tradotto.

(1) Non esiste un linguaggio standard per l’insegnamento ma il linguaggio è a scelta discrezionale del docente. I testi di informatica propongono diversi tipi di linguaggi, dai vecchi, ma sempre validi, C e Pascal ai linguaggi alla moda del momento come PHP, Visual Basic o Python.

Annunci

4 pensieri su “Dieci linguaggi [di programmazione] per me…

  1. Peraltro, kolkazzo che riesci ad essere davvero efficiente su più di uno o due.
    Per quel poco che faccio uso python e php. Quando passo da python a php, per una decina di minuti, dimentico i ; in fondo alle righe. Quando faccio il contrario li metto anche se non servono. Così come l’uso delle graffe o dei “:”.

    Inoltre per un bravo programmatore, il linguaggio è un dettaglio. Se padroneggi i concetti per la creazione degli algoritmi, diventare padrone (al 90%, per il restante 10% servono anni) di una architettura (linguaggio, database, application server, librerie) ci vuole qualche mese.
    Per diventare padrone della sintassi di un linguaggio basta qualche giorno…

    Mi piace

    • a me il casino capitava quando saltavo da PERL a PHP. Passare da un linguaggio ad uno con una sintassi molto simile è peggio, confusione assicurata. Alla fine mi trovo bene con PERL come linguaggio di scripting per linux (lo preferisco al linguaggio di programmazione della shell BASH) e VBA/VB.net per le applicazioni di office automation.

      Mi piace

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...