8 : I dati e la loro struttura nella programmazione ( ARRAY , MATRICI , RECORD ) Vers . 8.3 – Febbraio 2024
8 . DATI SEMPLICI E STRUTTURE DATI
Iniziamo dando una definizione generale di “ TIPO DI DATO ”
In informatica un TIPO DI DATO è una entità caratterizzata dai seguenti elementi :
• un insieme X di valori che rappresenta il “ DOMINIO ” del tipo di dato ;
• un insieme opzionale di costanti che caratterizzano l ’ insieme X ;
• un insieme di operazioni che si possono effettuare sull ’ insieme X .
I tipi di dato possono essere classificati in :
a ) tipo elementare o tipo semplice : i cui dati non sono costituiti da altri dati ed inoltre nel corso del processo risolutivo , in un certo istante di tempo , possono assumere un unico valore ;
b ) tipo strutturato o struttura dati : i cui dati risultano essere aggregazioni di tipi elementari e / o strutturati che è possibile estrarre tramite opportune operazioni ed inoltre nel corso del processo risolutivo , in un certo istante di tempo , possono assumere più valori .
Ogni linguaggio di programmazione prevede alcuni tipi di dato . Qui tratteremo i più usati .
La maggior parte dei linguaggi di programmazione consente al programmatore di definire propri tipi di dato così da renderli più vicini al problema in esame .
Questi tipi di dati sono conosciuti come TIPI DI DATI ASTRATTI o ADT ( Abstract Data Type ) e vanno trattati a parte : in pratica attraverso la tecnica dell ’ ADT è possibile definire nuovi tipi di dato sostanzialmente più complessi e maggiormente inerenti la realtà del problema osservato .
Si parla quindi di astrazione sui dati in quanto si realizza una astrazione dalla loro realizzazione fisica ( ossia dalla loro implementazione ), dettagliando il nuovo dato in funzione delle operazioni previste per la loro manipolazione .
In altre parole durante l ’ attività di programmazione nel passaggio dal problema al programma eseguibile finale il concetto di modello dei dati o struttura dati compare trasversalmente : ( 1 ) a livello del progetto ossia durante la fase astratta della progettazione indipendentemente dalla tecnologia che si utilizzerà ; ( 2 ) a livello di codifica ossia durante la fase di codifica o implementazione del programma ; ( 3 ) a livello interno o fisico ossia a livello della modalità di memorizzazione nel calcolatore ( memoria principale e / o di massa )
1 ) A LIVELLO DEL PROGETTO con il termine “ struttura dati ” si intende una STRUTTURA DATI ASTRATTA che è definita da :
• un insieme base di elementi in genere variabili che contengono i dati del problema ;
• un insieme di regole che determinano le relazioni tra i singoli elementi dell ’ insieme base ;
• un elenco di operazioni che agiscono sull ’ insieme .
Invece di “ struttura dati astratta ” si utilizzano anche i termini “ modello astratto dei dati ” o “ tipo di dato astratto o ADT ”.
Il modello astratto dei dati : - NON dipende dal calcolatore usato ( hardware );
- NON dipende dal linguaggio di programmazione scelto per tradurre la struttura dati astratta e l ’ algoritmo nel programma sorgente .
Autore : Rio Chierego ( email : riochierego @ libero . it - sito web : www . riochierego . it ) Pag . 1