Di che cosa parliamo a riguardo di C++:
- Che cos’è C++.
- A che cosa serve C++.
- Per che cosa si usa C++
- Quando è nato C++.
- Quanto ci vuole a imparare C++.
1. Che cos’è C++
C++ è un linguaggio di programmazione generica con una inclinazione verso la programmazione di sistemi, che mostra alcune caratteristiche peculiari.
È essenzialmente un C migliorato. C++ è un diretto discendente di C, il quale è quasi tutto contenuto dentro C++ come sottoinsieme del linguaggio. Supporta più stili di programmazione di C e possiede caratteristiche tecniche come astrazione dei dati, programmazione orientata agli oggetti e programmazione generica.
Astrazione dei dati implica la possibilità di ridurre un insieme di dati a una sua rappresentazione semplificata.
Programmazione orientata agli oggetti significa fare uso di tecniche come incapsulamento, ereditarietà e poliformismo del codice. In particolare, in C++ vuol dire usare classi organizzate in gerarchie e funzioni virtuali che permettono la manipolazione di oggetti software definiti all’interno di un programma.
La programmazione generica si basa su una tecnica definita parametrizzazione, che permette di stabilire associazioni tra tipi di dati o tra algoritmi. Lo scopo della programmazione generica è portare un certo algoritmo o una certa struttura dati alla sua forma più utile e funzionale nella generalità dei casi.
2. A che cosa serve C++
Come linguaggio di programmazione, C++ serve a scrivere programmi, insiemi di istruzioni tradotte dentro il computer in una forma leggibile dall’unità centrale di programmazione (CPU).
Le sue scelte di progettazione e decenni di evoluzione e aggiornamento ne fanno oggi uno dei linguaggi di programmazione più versatili ed eclettici. Non per niente C++ permette di applicare la cosiddetta programmazione multiparadigma, in pratica l’utilizzo entro un software di più stili di programmazione differenti, ognuno espresso nel modo migliore.
Leggi anche: Che cos’è un linguaggio di programmazione (e no)
C++ si distingue anche per la sua portabilità, ovvero la capacità di svilupare una base di codice che poi è in grado di funzionare su hardware e software eterogenei.
3. Per che cosa si usa C++
In generale i linguaggi di programmazione vengono disposti lungo una linea che va dai linguaggi di basso livello a quelli di alto livello.
Basso livello vuol dire che un programma riesce a dialogare direttamente con lo hardware e i sottosistemi di un computer in pochissimi passaggi; normalmente un linguaggio di programmazione di basso livello dispone di una sintassi relativamente oscura agli occhi di un umano non esperto.
Alto livello significa altrimenti che un programma parla con i sottosistemi del computer partendo da lontano, dovendo dialogare con gli strati di software che il sistema operativo interpone tra lo hardware e l’esecuzione del software. La sintassi di un linguaggio di alto livello è di norma relativamente chiara agli occhi di un umano non esperto.
C++ riceve grande considerazione in quanto conserva una sintassi piuttosto leggibile per un programmatore umano ma si posiziona verso i linguaggi di basso livello; ossia, permette di dialogare con lo hardware di un computer con pochi filtri e restrizioni, pur conservando una leggibilità soddisfacente.
4. Quando è nato C++
Il lavoro su ciò che sarebbe diventato C++ è iniziato nel 1979 e la sua prima versione si chiamava C with Classes. La prima versione di C++ venne testata internamente in AT&T nell’agosto del 1983 e non si chiamava ancora C++; ebbe il suo nome attuale solo dopo qualche mese.
La prima implementazione commerciale di C++ data a ottobre 1985.
C++ nacque spinto dal desiderio di poter fare programmazione di sistemi efficiente nello stile proposto da Simula67. Più in generale, volevo progettare un linguaggio che mi consentisse di scrivere programmi sia efficienti che eleganti. Molti altri linguaggi di programmazione costringono a scegliere tra queste due alternative.
Una curiosità forse interessante è che il primo compilatore per C++, Cfront, è stato scritto in… C++. Prima di tutto, ho usato per scrivere un preprocessore da C with Classes a C; poi scrissi la prima versione di Cfront in C with Classes.
5. Quanto ci vuole a imparare C++
Dipende da che cosa intendiamo con imparare. Un programmatore C può imparare in una giornata ciò che occorre per scrivere ottimi programmi C++.
Al tempo stesso, chi manchi di una conoscenza pregressa di tecniche di programmazione che sono parte integrante di C++, come astrazione dei dati, programmazione orientata agli oggetti, programmazione generica e via dicendo, per acquisire l’esperienza necessaria potrebbe anche avere bisogno di un anno o due.
Tutto va messo in prospettiva. Lo scopo di imparare C++ dovrebbe essere diventare progettisti e programmatori migliori, in modo percepibile. Pensiamo al tempo richiesto per imparare bene una lingua straniera o uno strumento musicale. Da questo punto di vista, imparare un nuovo linguaggio e un nuovo stile di programmazione è facile!
Questo articolo richiama contenuti da C++.
Immagine di apertura di Niranjan _ Photographs su Unsplash.