Ricerca nel sito web

L'ascesa e la caduta della popolarità dei linguaggi di programmazione dal 2016 - e cosa ci dice


Il nostro ultimo approfondimento analizza i numeri dal 2016 al 2024, rivelando affascinanti spunti sulla popolarità dei linguaggi di programmazione e su come le tendenze emergenti e i cambiamenti del settore hanno influenzato le preferenze degli sviluppatori.

Nelle ultime settimane abbiamo discusso della popolarità del linguaggio di programmazione qui su ZDNET. Più recentemente, ho aggregato i dati di nove diverse classifiche per produrre l'indice ZDNET della popolarità dei linguaggi di programmazione.

Mettendo insieme queste statistiche, ho trovato i dati grezzi di un sondaggio simile che ho fatto nel 2016. Anche se lo studio era basato su sei classifiche invece delle nove che ho usato quest’anno, si è comunque rivelato istruttivo riguardo alla popolarità complessiva della lingua tra i gruppi costituenti.

Ero curioso. Considerati i dati, come è cambiata la popolarità della lingua negli ultimi otto anni? Ovviamente, il grande cambiamento nel nostro panorama informatico è stata l’intelligenza artificiale, quindi dove si è inserita nel mix? Il risultato è questo diagramma molto carino.

Quel diagramma contiene molte informazioni. Proviamo a scomporlo in parti più gestibili, iniziando dalle lingue più in voga.

Le migliori lingue

Python è un linguaggio elegante. È semplice ma estremamente potente ed è diventato il linguaggio di riferimento per l'intelligenza artificiale e i data scientist, nonché per lo sviluppo web in generale. Non inaspettatamente è passato al primo posto.

JavaScript è diventato sempre più centrale nello sviluppo web, soprattutto nella creazione di documenti web dinamici. Anche framework come React e Angular hanno contribuito ad espandere la sua utilità e a spingerlo al di sopra di altri linguaggi.

Gli artisti coerenti

Se esistono linguaggi che incarnano la programmazione classica, sono i linguaggi basati su C: Java, C++, C# e C stesso. A dimostrazione del fatto che la codifica algoritmica ha ancora molta vita, questi linguaggi sono rimasti sostanzialmente invariati.

Certo, Java ha perso due posizioni nel nostro indice, ma è ancora nella cerchia dei vincitori. Java è un linguaggio di programmazione robusto e orientato agli oggetti comunemente utilizzato nelle applicazioni aziendali e anche nello sviluppo Android. Nonostante la concorrenza di altri linguaggi, esiste un numero enorme di programmatori e applicazioni che lo mantengono rilevante. Per quelli di voi che non seguono troppo da vicino le lingue, Java e JavaScript sono bestie abbastanza diverse.

C++ è l'estensione dell'antico C, aggiungendo funzionalità orientate agli oggetti. Mentre il C risale al 1972, il C++ è ancora piuttosto antico, essendo stato inizialmente distribuito nel 1985. Tuttavia, è popolare per applicazioni compilate e sensibili alle prestazioni che necessitano di una struttura orientata agli oggetti.

C# è la versione di Microsoft di C++, ampiamente utilizzata nelle applicazioni e nei giochi Windows. È veloce, efficiente e totalmente integrato nell'ecosistema di sviluppo Microsoft.

Onestamente sono un po' sorpreso dalla longevità di C. Detto questo, è stretto. Non contiene residui aggiunti e fa esattamente quello che promette. È molto apprezzato in alcune aree dello sviluppo del sistema operativo, dei compilatori e dei sistemi embedded.

Per le prime sei lingue, gli unici cambiamenti nel corso degli otto anni sono stati alcuni spostamenti di posizione. Ma ora, passando a lingue un po’ meno universalmente popolari, vediamo che la volatilità è stata abbastanza estrema.

I nuovi entranti

TypeScript, Rust, Kotlin e Dart non erano nel nostro elenco del 2016 ma sono ora nel nostro elenco del 2024. Tutti e quattro esistevano prima del 2016 (anche se Rust aveva appena un anno all'epoca), ma ora stanno vedendo una maggiore diffusione.

TypeScript è un altro linguaggio originario di Microsoft. È essenzialmente un JavaScript moderno, che aggiunge la digitazione statica. Ciò migliora la qualità del codice e semplifica la manutenzione, soprattutto man mano che i progetti crescono. La sua capacità di scalare i progetti JavaScript è probabilmente uno dei fattori che portano alla sua crescente popolarità. Un altro è che è stato incorporato nei principali framework JavaScript.

Rust è un linguaggio molto utilizzato nella programmazione dei sistemi. La sua attenzione alla sicurezza della memoria senza sacrificare le prestazioni ha aiutato a prendere parte del lavoro dei sistemi da C e C++.

Kotlin è essenzialmente Java sotto steroidi. Kotlin è completamente interoperabile con Java, aggiungendo alcune funzionalità di sicurezza della codifica, aiutando i programmatori a scrivere codice più conciso, aggiungendo coroutine per il codice asincrono, consentendo ai programmatori di estendere le classi utilizzando funzioni di estensione e altro ancora. Google ha scelto Kotlin come linguaggio preferito per Android, cosa che gli ha dato un forte impulso.

Dart e Flutter sembrano usciti da un film Disney, ma invece stiamo parlando di linguaggio e struttura. Dart, sviluppato da Google, eccelle nella creazione di interfacce utente mobili e Flutter aiuta gli sviluppatori a eseguire la distribuzione su più piattaforme.

Le stelle nascenti

Ad eccezione di Go, i nostri astri nascenti sono davvero vecchi fedeli, solo con un po' più di energia nel loro passo.

Go è un altro linguaggio tipizzato staticamente sviluppato da Google. Fornisce una struttura abbastanza semplice per la creazione di applicazioni scalabili e simultanee. Go è diventato popolare per il cloud computing, i microservizi e la containerizzazione.

Dato che abbiamo menzionato più volte la digitazione statica, forse dovrei spiegartelo. Le variabili sono contenitori di codifica che contengono valori che cambiano. I valori assegnati spesso appartengono a tipi diversi (come numeri interi, stringhe di caratteri, numeri in virgola mobile e così via). Spesso i compilatori e gli interpreti non controllano quale tipo di valore dovrebbe andare con quale variabile.

Potrebbero sorgere problemi da questo problema una volta distribuito, ma potrebbero non essere rilevati durante lo sviluppo. La tipizzazione statica controlla variabili e valori durante il processo di sviluppo, portando a un codice più affidabile una volta distribuito. Sarebbe magico, tranne che è una mera questione di programmazione.

Le lingue successive hanno causato qualche dibattito negli articoli precedenti. Alcuni programmatori affermano che non sono nemmeno veri linguaggi. Li ho inclusi perché erano inclusi nei sondaggi che ho aggregato. Detto questo, parliamo di SQL, HTML e shell.

I programmatori algoritmici (in particolare la varietà C/C++/C#) guarderanno HTML e SQL e li condanneranno come linguaggi non reali. Questo perché non hanno caratteristiche tipiche della programmazione algoritmica. Ma si basano su una sintassi che genera un risultato e, soprattutto, sono competenze necessarie per produrre applicazioni.

HTML (che definisce la struttura delle pagine web) e CSS (che definisce lo stile) probabilmente non invecchieranno mai. E le pagine web, sotto forma di interi siti o solo di parti di output, sono la posta in gioco per la maggior parte dei progetti moderni. Perché sono aumentati dal 2016? Lo sviluppo web rimane fondamentale per la trasformazione digitale, quindi le competenze sono richieste.

SQL (Structured Query Language) è un linguaggio per il recupero di dati dai database. Poiché i dati diventano sempre più importanti, lo è anche la capacità di recuperarli.

La programmazione della shell, che è uno strumento per programmare sequenze di programmi, esiste dall'alba dei tempi. È una delle caratteristiche che ha dato a UNIX e poi a Linux un tale potere. Esistono forme di programmazione della shell per tutti i principali sistemi operativi, ma è la necessità di sempre più automazione e orchestrazione in ambienti di sistemi complessi che mantiene questi strumenti della vecchia scuola pertinenti e in costante evoluzione.

Le lingue perdono popolarità

Le lingue in calo di popolarità includono PHP, Swift, Ruby e R.

Poiché WordPress è costruito in PHP e io faccio molta programmazione WordPress, programma molto in PHP. Non è poi così divertente. PHP è un linguaggio molto poco elegante, con strane incoerenze ed eccezioni. È potente e capace ma brutto e soggetto a errori inutili. La sua popolarità sta diminuendo mentre Python sta aumentando.

Ruby è un altro linguaggio che ha avuto il suo tempo al sole, ma ci sono alternative migliori. JavaScript, in particolare combinato con Node.js, Python, Go, TypeScript e Rust, sono tutte alternative più flessibili, potenti e sicure per il codice.

Sono stato sinceramente sorpreso di vedere il calo del linguaggio statistico R, soprattutto perché l'analisi dei dati richiede statistiche. Ma il fatto è che tutto ciò che R potrebbe fare, Python può farlo meglio. Stai iniziando a capire perché Python è così popolare?

E poi c'è Swift, il fiore all'occhiello di Apple per lo sviluppo iOS. Il calo di Swift significa che le app iOS stanno perdendo popolarità? No, non proprio. È solo che Swift non è più l'unico gioco in città per lo sviluppo iOS. Le alternative includono AppCode di JetBrains, Flutter sviluppato da Google, React Native creato da Facebook e la potente piattaforma di sviluppo di giochi Unity.

Lingue scomparse dalle classifiche

È logico che Objective-C esca dalle classifiche. Un tempo questo era l'ambiente di programmazione principale per i dispositivi Apple, ma Apple lo ha attivamente sostituito con Swift. Quindi, in sostanza, Objective-C è obsoleto.

Perl è sorprendente per quello che fa, ma il suo codice è così compatto da essere quasi illeggibile. Ciò rende anche molto più difficile la manutenzione. Man mano che i progetti di codifica diventano sempre più grandi, la manutenibilità diventa più importante del numero di caratteri necessari per scrivere una riga di codice.

Visual Basic e Delphi un tempo erano i linguaggi principali per la creazione di applicazioni Windows, ma sono stati sostituiti dallo sviluppo web per alcune applicazioni e dal C# per tutto il resto. Non sono stati dimenticati, ma per lo più scomparsi.

Cosa usi?

Che lingue stai usando? Qualcuno dei tuoi preferiti è diventato una stella nascente o è uscito dalle classifiche? Siete d'accordo con la mia valutazione sul perché le lingue sono aumentate o diminuite? Qualcuno dei risultati ti ha sorpreso? Fatecelo sapere nei commenti qui sotto.

Puoi seguire gli aggiornamenti quotidiani sui miei progetti sui social media. Assicurati di iscriverti alla mia newsletter di aggiornamento settimanale e seguimi su Twitter/X su @DavidGewirtz, su Facebook su Facebook.com/DavidGewirtz, su Instagram su Instagram.com/DavidGewirtz e su YouTube su YouTube.com/DavidGewirtzTV.

Articoli correlati