Introduzione al linguaggio C

In questo articolo di “Introduzione al linguaggio c” sono messi in risalto cenni storici, personaggi e punti di riferimento di questo linguaggio di programmazione; infatti sono molti a pensare che ha cambiato il mondo dell’informatica, contribuendo in modo univoco allo slancio  tecnologico del mondo moderno. Il linguaggio c fu scritto da Dennis Ritchie ed il codice di questo linguaggio fu creato su un sistema DEC PDP-11; sigla che sta per (Digital Equipment Corporation Programmed Data Processor model 11) con architettura a 16 byte; qui Dennis Ritchie fece girare il primo programma scritto in linguaggio c. Il linguaggio c deriva da un processo di sviluppo del linguaggio BCPL di Martin Richards che influenzò la scrittura del linguaggio B di Ken Thomson.

Introduzione al linguaggio C

Immagine storica dei creatori del linguaggio c: Ken Thomson e Dennis Ritche.

Introduzione al linguaggio C: gli arbori

Agli arbori degli anni 70 il linguaggio C inizia il suo percorso verso il successo! Il C è un linguaggio di tipo procedurale e riesce ad integrare caratteristiche dei linguaggi di basso livello, come l’assembly; questa affinità a mio avviso rende questo linguaggio la via di mezzo tra i linguaggi di basso livello e quelli di alto livello dove un complemento totale viene fornito invece dal c++.



Introduzione al linguaggio C: struttura

Il C possiamo spingerci a dire che e un linguaggio strutturato a blocchi; anche se si distingue dal fatto che: a differenza di altri linguaggi più moderni che invece rientrano a pieno titolo in questa categoria questo linguaggio no; con il C è consentito richiamare le procedure o funzioni internamente da altre di esse, questa rigidità pone il linguaggio c in una posizione intermedia facendo si che esso non rientri poi tra i linguaggi con struttura a blocchi.

Introduzione al linguaggio C

Introduzione al linguaggio C: il valore dimostrato

Il linguaggio C, blasonato per la sua potenza si è imposto come linguaggio di riferimento per la realizzazione di software di sistema su scala globale; un classico esempio giusto per intenderci: il sistema operativo Unix e i suoi derivati; questo linguaggio mostra tutto il suo valore in quei programmi che richiedono prestazioni elevate in termini di risposta. A differenza del linguaggio Java dove l’ hardware: nel tempo e stato adattato, migliorato e potenziato per sfruttare i vantaggi della Java Virtual Machine. Questo modo di venire in contro al Java anche involontariamente da parte dei produttori di device, sempre più potenti grazie alla portabilità di Java ha appianato le lacune del linguaggio. In particolare per quanto riguardava i tempi di risposta di applicativi in Java; il linguaggio C e C++ si comportano esattamente in modo opposto, ovvio che non e tutto oro quello che luccica.



La standardizzazione ANSI ISO

La standardizzazione del linguaggio in prima istanza dell’ ANSI e in seguito dell’ ISO; garantisce la portabilità dei programmi scritti in C standard; spesso detto ANSI C su qualsiasi piattaforma. Oltre che per il software di sistema il C è stato sin da subito e ancora oggi un linguaggio dominante in molti sbocchi; per esempio: programmi che richiedono determinate prestazioni in modo da sfruttare a pieno la potenza del processore. Esempi tipici sono il controllo dei processi di calcolo, le telecomunicazioni e i giochi 3D in C++.

Introduzione al linguaggio C: Riflessioni sul presente

Possiamo affermare che Java oggi la fa da padrone per molti sbocchi grazie alla sua flessibilità e portabilità del suo codice; però dobbiamo dire che ancora oggi non possiamo affermare ad esempio che Java ci potrebbe garantire le stesse prestazioni di un gioco in 3D sviluppato con C++. Oggi, il predominio del C in molti contesti è in parte diminuito a seguito dell’ avvento dei nuovi linguaggi orientati ad oggetti; un esempio, il linguaggio C++ che comunque è un derivato, o meglio un estensione del C; infatti possiamo affermare che Java vuoi anche per analogie di sintassi e figlio di questi due.

Suggerimenti:

Anche se la sua complessità di apprensione e minori sbocchi lavorativi oggi lo rendono meno attraente rispetto ad altri linguaggi di programmazione; per le forti relazioni di implementazione che vanno a toccare la sintassi e il funzionamento di altri importanti linguaggi come C++ e Java fanno si che continua ad avere anche una notevole importanza didattica; infatti non è un linguaggio particolarmente intuitivo per i principianti e in particolare per coloro che sono sprovvisti di un adeguato background riguardante i calcolatori, quindi va da se che conoscendo il linguaggio C si è poi agevolati anche con il linguaggio C++ e Java. Oggi i percorsi formativi trovano un’ulteriore motivazione nella crescente importanza di linguaggi orientati ad oggetti, Java in primis.

Articolo del 7 Feb, 2018 categoria: Programmazione

Tag#