Programmazione informatica: cos’è, definizione di base e strutture di dati

Che cosa s’intende per programmazione informatica, concetti che stanno alla base di una corretta organizzazione dei dati a opera del programmatore che deve avere la capacità di elaborare un programma in grado di porre in sequenza tutte le operazioni necessarie per ottenere il risultato desiderato.

programmazione informatica
programmazione informatica

Programmazione informatica di base

Con il termine programmazione si indica l’insieme delle procedure informatiche che servono a trasmettere al computer una sequenza ordinata di istruzioni con lo scopo di raggiungere un risultato ben definito.

Tale sequenza di istruzioni viene indicata con il termine “algoritmo”.

La prima cosa che deve fare un operatore informatico, che si vuole prefiggere lo scopo di elaborare un programma, è quella di porre in sequenza tutte le operazioni logiche necessarie per raggiungere il risultato voluto.

Successivamente il programma così scritto dovrà essere tradotto in una forma idonea per farlo comprendere dal computer.

Il programma scritto dal programmatore viene di solito definito come programma sorgente, mentre il programma ottenuto dopo il processo di traduzione viene indicato come programma oggetto.

Affinchè un programma possa essere eseguito da un computer è indispensabile che sia tradotto in codice macchina, vale a dire in una successione di numeri binari, alcuni dei quali non sono altro che istruzioni ben precise dirette all’unità centrale di elaborazione, altri dati puri e altri ancora indirizzi di memoria.

Nella programmazione informatica i dati devono essere organizzati in strutture manipolabili facilmente, per questo motivo a ogni dato viene assegnato un nome o una sigla che permetta di identificarlo.

I dati a cui è stato assegnato un nome univoco e che mantengono lo stesso valore per tutta la parte del programma dove sono stati definiti si chiamano costanti.

Si chiamano variabili, al contrario, tutti quei dati ai quali, pure essendo stato assegnato un nome univoco, il programma assegna liberamente valori diversi a seconda del punto in cui li incontra.

Un computer non deve solo sapere come si chiama un certo dato, ma deve conoscere anche di quale tipo è per poterlo trattare adeguatamente nella memoria.

La dichiarazione di tipo all’interno di una struttura di dati fissa il numero di elementi che la compongono, consente al computer di assegnarli le risorse di calcolo e lo spazio di memoria necessario a una corretta elaborazione, oltre alle modalità precise riguardanti il modo di accedere ai singoli elementi della struttura.

Se i dati sono dello stesso tipo, ad esempio tutti numeri o tutte lettere, è possibile creare una serie, detta “array”, di dati appartenenti alla stessa tipologia con un unico comando.

A ogni elemento viene assegnata una certa posizione di memoria.

L’intera serie viene chiamata struttura o record e i singoli elementi variabili o campi.

Dal momento che le strutture di dati solitamente sono fisse e per questo in molti casi insufficienti, potrebbe essere necessario ricorrere a strutture di maggiore complessità in grado di modificarsi autonomamente durante l’esecuzione del programma stesso.

In questo caso si parla di strutture dati dinamiche.

Essendo la loro dimensione e il loro tipo variabili in un arco temporale, queste strutture vengono trattate dal programma stesso anzichè dal computer, per questa ragione è indispensabile che il programmatore conosca in maniera approfondita l’utilizzo di alcune particolari variabili, chiamate puntatori, che hanno il compito di identificare con precisione un dato sia all’interno della struttura in cui è stato creato, sia all’interno della memoria del computer.

Un cattivo uso delle strutture dei dati può causare instabilità nel funzionamento del computer.