C è un linguaggio fondamentale e molto potente, tuttavia, non c’è sul mercato moltissima richiesta di programmatori in C. Ma allora, perché un tecnico informatico, un software engineer, un programmatore o gli studenti dovrebbero imparare il linguaggio C? E per quale motivo il C è così popolare?
Imparare il linguaggio C: perchè?
Perchè il C è
Approfondisco all’inverso… 🙂 :
C è usato per creare altri linguaggi e sistemi operativi
Quindi C, è una linguaggio di base per apprendere altri linguaggi che sono addirittura scritti a loro volta in C. E’ il caso di Perl, Ruby, Php, Python solo per nominarne alcuni; persino la Java virtual machine (JVM) è scritta in C.
Conoscere il linguaggio C permette, ad esempio, una programmazione più efficace in Objective-C per le app iOS, e, una più intuitiva programmazione di giochi in C++.
Il C, infatti, condivide con gli altri linguaggi molti elementi di sintassi, le strutture di controllo (for, while, do-while), i tipi di dati e così via.
C è inoltre il precursore di C++ e Java.
C è stato scritto per creare il sistema operativo Unix e le utilities stesse di Unix; anche il kernel del sistema operativo Linux è scritto in C. Anche il kernel di Windows Vista è scritto in C. I kernel sono scritti principalmente in C (e in parte in C++) non solo per essere poi più veloci, ma anche perchè i componenti interni del C (puntatori, strutture e altro) permettono agli sviluppatori una totale flessibilità sulle cose di molto basso livello sulle quali hanno bisogno di lavorare.
–>torna su
C è vicino all’hardware
Il C è un linguaggio compilato che cioè necessita di più passi per produrre un programma, ma è molto versatile ed efficiente nella produzione di programmi veloci, perchè permette, ad esempio la manipolazione della memoria anche a basso a livello, o l’ottimizzazione del codice tramite compilatore (vedi ad esempio le "optimize options").
I puntatori in C, sono qualcosa che non puoi utilizzare in altri linguaggi di alto livello, anche perchè, ad esempio in Python (o in altri linguaggi), non hai bisogno di capire come funziona una lista linkata perchè il linguaggio ti fornisce tutto quello di cui hai bisogno. Anche se questo può sembrare comodo, verrà il momento in cui, sapere cos’è una lista, ed essere in grado di crearla da zero, diventa cruciale. Dover gestire la memoria in maniera dinamica fa poi comprendere meglio il concetto di Garbage Collection (presente ad esempio in Java).
Quindi, se siete veramente, e seriamente interessati alla programmazione, imparare il linguaggio C dovrebbe essere la vostra priorità.
–>torna su
C è onnipresente
Il C oggi è usato per la Programmazione di sistema (in C puro) o in aree più specializzate quando si lavora con linguaggi che sono estensioni del C o molto vicini al C.
E’ usato per programmare data managers come Oracle Berkeley DB (da loro definito come il miglior embeddable database open source)
Anche Arduino ha reso molto popolare il C nella comunità degli appassionati; Arduino è un microcontollore elettronico open source, cioè un piccolo computer incluso in un singolo circuito integrato programmabile con elaborazioni in tempo reale di input/output. Gli esempi già presenti in Arduino ti permettono di imparare il linguaggio C e le sue parole chiave in breve tempo e di testare i programmi su piccoli progetti visivamente gratificanti.
–>torna su
Questo articolo è stato liberamente tratto e tradotto da vari siti e in particolare da:
- why learn C sul sito di O’ Reilly,
- why learn C su teachmeprogramming.com,
- why C su cprogramming.com,
- 5 reasons why you should learn C su codercaste.com (nel quale si trova anche un buon approfondimento sul C++).