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; 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
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++.

Struttura del linguaggio c

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
I creatori del linguaggio c: Ken Thomson e Dennis Ritche.

Introduzione al linguaggio C

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 c in prima istanza dell’ANSI (American National Standards) ed in seguito dell’ISO (International Organization for Standardization); tracciano un modello comune dei programmi scritti in codice “C standard” (ANSI C). Oltre che per il software di sistema il C è stato sin da subito ed ancora oggi un linguaggio dominante; ad 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++.

Riflessioni

Possiamo affermare che Java oggi la fa da padrone in 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++. Il predominio del C in molti contesti è in parte diminuito a seguito dei nuovi linguaggi orientati ad oggetti; un esempio, il linguaggio C++ è un estensione del C; infatti possiamo affermare che Java vuoi anche per analogie di sintassi e figlio di questi due.

Conclusioni

Il linguaggio c è meno attraente rispetto ad altri linguaggi di programmazione moderni orientati ad oggetti essendo di tipo procedurale; per le forti relazioni di implementazione che vanno a toccare la sintassi di (C++ e Java) fanno si che continui ad avere una notevole importanza didattica; non è un linguaggio particolarmente intuitivo per i principianti ed in particolare per coloro che sono sprovvisti di un adeguato background sui calcolatori, quindi va da se che imparare il linguaggio C si è poi agevolati anche con il linguaggio C++ e Java. Oggi i percorsi formativi trovano ulteriori motivazione nei linguaggi orientati ad oggetti, Java in primis.

Articolo del 7 Feb, 2018 categoria: Programmazione

Tag#