Redazione RHC : 28 Luglio 2021 15:51
Spesso molte persone si domandano quale sia Il miglior linguaggio di programmazione da imparare. Questo soprattutto per chi si affaccia per la prima volta alla scrittura del codice, ma affascina anche gli educatori da molto tempo.
Quando gli studenti iniziano a imparare l’informatica, con quale linguaggio di programmazione dovrebbero iniziare?
Iscriviti GRATIS ai WorkShop Hands-On della RHC Conference 2025 (Giovedì 8 maggio 2025)
Il giorno giovedì 8 maggio 2025 presso il teatro Italia di Roma (a due passi dalla stazione termini e dalla metro B di Piazza Bologna), si terranno i workshop "hands-on", creati per far avvicinare i ragazzi (o persone di qualsiasi età) alla sicurezza informatica e alla tecnologia. Questo anno i workshop saranno:
Supporta RHC attraverso:
Ti piacciono gli articoli di Red Hot Cyber? Non aspettare oltre, iscriviti alla newsletter settimanale per non perdere nessun articolo.
Scopriremo che non esiste una ricetta perfetta, un nome, ma ci sono anche persone che hanno dedicato una parte della loro vita a studiare questa cosa come il professor Mark Guzdial dell’Università del Michigan che ha anche condotto le sue ricerche nel campo dell’educazione informatica.
“Ho un’ipotesi del perché questa convinzione fosse vera quando questo campo era giovane”
ha scritto Guzdial in un pezzo pubblicato di recente su Communications of the ACM, l’house organ dell’Association of Computing Machinery (ACM). Ma questo accadeva alla fine degli anni ’60, quando i curricula con esperienze in programmazione venivano visti per le prime volte. Oggi gli studenti di tutte le età, con livelli di esperienza diverse sanno programmare.
Ma è anche interessante notare i cambiamenti avvenuti nel corso degli anni nei dipartimenti di informatica che hanno gradualmente evoluto le loro scelte sul primo linguaggio di programmazione da far imparare ai loro studenti. Analizzando quello che sta accadendo oggi, ci potrebbe far comprendere cosa stiano immaginando per il futuro.
Nel 2017, la Stanford University fece delle modifiche al suo corso introduttivo di informatica per laureati in informatica. Secondo il giornale studentesco di Stanford, Eric Roberts, professore emerito di informatica, ha trascorso cinque anni lavorando alla transizione del corso da Java a JavaScript e ha finalmente creato una nuova versione pilota del corso basata su JavaScript.
Il cambiamento ha comportato la creazione di un nuovo libro di spiegazioni e di compiti. In precedenza le lezioni introduttive di Stanford erano basate sul linguaggio di programmazione C (e prima ancora, Pascal). Ma successivamente JavaScript divenne “il linguaggio di Internet” e per questo era importante.
Roberts aveva aiutato a passare le classi a Java nel 2002, lavorando per ristrutturare i corsi e gli incarichi. Ma 15 anni dopo, aveva detto al giornale studentesco che “Ora è il 2017 e Java sta mostrando i segni della sua età”.
Harvard invece nel corso degli anni ha mantenuto un approccio differenziato. Nella prima settimana, gli studenti scrivono programmi in Scratch.
Si tratta di un linguaggio di programmazione visiva basato su blocchi sviluppato per insegnare ai più giovani come funziona la programmazione, che venne appreso dal MIT Media Lab, prima di passare al C.
Interfaccia grafica di Scratch
Nelle settimane successive ecco che si passa a Python e poi a JavaScript.
“Piuttosto che insegnare una sola lingua, si introduce gli studenti a una gamma di linguaggi di programmazione ‘procedurali’, ognuno dei quali si basa concettualmente sull’altro. L’obiettivo, in definitiva, è che gli studenti non sentano di aver ‘imparato a programmare in X’, ma di aver ‘imparato a programmare'”.
spiegano le FAQ ufficiali del corso di programmazione.
Ma perché iniziarli con C? L’istruttore della classe, il professor David J. Malan , una volta ha scritto su Quora che:
“Il C è il più vicino all’hardware di un computer prima di arrivare ad un linguaggio assembly. In C, non c’è magia. Se vuoi che qualcosa sia da qualche parte nella memoria, devi mettercelo tu. Se vuoi una tabella hash, devi implementarla tu stesso.”
Malan, secondo i suoi commenti su Quora, ritiene che le settimane del C diano agli studenti l’opportunità di comprendere alcuni degli elementi costitutivi fondamentali di tutti i linguaggi di programmazione (fornendo anche l’opportunità di spiegare il concetto cruciale di sicurezza dei buffer overflow).
“Penso che sia anche una cosa potente passare dall’implementare una tabella hash (o provare) in C in una settimana, e poi solo una settimana dopo implementare lo stesso in una sola riga di codice PHP o JavaScript”
scrisse. Inoltre, il C è anche un linguaggio relativamente piccolo, quindi “a metà semestre, gli studenti lo hanno visto quasi tutto (ad eccezione, ad esempio, di unioni e puntatori di funzioni)”.
Ciò che viene insegnato ai programmatori principianti rimane ancora una domanda importante.
“L’incapacità di comprendere prontamente la programmazione quasi certamente implica l’incapacità di progredire nell’informatica”
sostiene il professor Guzdial, dell’Università del Michigan. La questione di quale lingua insegnare per prima è stata quindi “accesamente dibattuta da quando è iniziato l’insegnamento dell’informatica nelle università”.
Nel suo articolo su ACM, ricorda uno studio del 1979 che sosteneva che una volta che uno studente impara i concetti semantici più ampi, può applicarli a qualsiasi lingua successiva (bisogna solo padroneggiare le differenze relativamente facili nella sintassi).
Abbiamo visto i corsi di programmazione di tre tra le più illustri università americane.
Non esiste un linguaggio di programmazione dal quale cominciare, ma esiste comprendere il funzionamento dei linguaggi di programmazione, partendo dalla programmazione ad oggetti per poi arrivare alla programmazione Object oriented.
Sicuramente una volta apprese le informazioni di base di un linguaggio di programmazione ad oggetti, passare quei concetti su altri linguaggi risulta semplice in quanto occorrerà imparare solamente ad applicare la sua semantica.
Il 25 febbraio 2025 WindTre ha rilevato un accesso non autorizzato ai sistemi informatici utilizzati dai propri rivenditori. L’intrusione, riconosciuta come un’azione malevola, è st...
Ancora non sono chiari i motivi che hanno causato un grave Blackout in Spagna e Portogallo nelle ultime ore. Vaste aree sono rimaste senza energia elettrica, scatenando un’ondata di speculazion...
Un’improvvisa e massiccia interruzione di corrente ha colpito la Penisola Iberica, gettando vaste zone di Spagna e Portogallo al buio e causando significative interruzioni alle infras...
Il report DarkMirror Q1 2025 di DarkLab, il laboratorio di Cyber Threat Intelligence di Red Hot Cyber, offre un’analisi dettagliata dell’evoluzione del ransomware in Italia e nel mondo. ...
Lo sviluppo di supercomputer per l’intelligenza artificiale sta entrando in una nuova orbita: in termini di scala, costi e consumi energetici e infrastrutture e megaprogetti. Uno studio condott...
Copyright @ REDHOTCYBER Srl
PIVA 17898011006