Programmazione Avanzata in C++ – I file e il loro uso in C++ – 1

Prima Lettura

Questo argomento molto vasto è trattato in varie letture per esporre i concetti teorici e le nozioni pratiche. Tutti gli esercizi sono sviluppato in approccio procedurale e poi nelle letture successive è introdotto il paradigma ad oggetti.

Introduzione

Il file è una raccolta di informazioni strutturate o non strutturate memorizzate in una memoria di massa, allo scopo di mantenere i dati in modo permanente per successive elaborazioni e processi.
Un file è caratterizzato da una sua struttura logica ovvero come il programmatore intende organizzare i dati secondo una progettazione specifica e possiede anche un’organizzazione fisica ovvero il modo in cui il sistema di calcolo mediante il sistema operativo, e in particolare il modulo del gestore delle informazioni memorizza gli stessi dati sui supporti.
Nello sviluppo di software il programmatore dovrà occuparsi sia della parte logia e sia dell’organizzazione fisica dei dati ovvero quali modalità di accesso utilizzare per leggere e scrivere i dati.

Come operare nel linguaggio C++

Nel linguaggio di programmazione in generale il file è gestito mediante l’apertura di un stream che un flusso dati, il quale può essere di input dal dispositivo di input alla memoria RAM, di output ovvero dalla memoria centrale RAM al dispositivo di output oppure di input / output. Quindi il file è tratta come stream e nel programma è definita la struttura logica del file ovvero il record logico e il descritto logico del file collegato ad un file fisico sul supporto di memoria di massa. In generale la gestione della memorizzazione fisica è delegata al sistema operativo attraverso il file system.
Sul supporto di memoria di massa sono memorizzati di dati sotto forma di record fisici che rappresentano i blocchi elementari dell’informazione. E’ quindi definito il “fattore di blocco” come il rapporto fra la dimensione logica del file (DL) e la dimensione del record fisico (DR).
Il rapporto è F= DL/DF e può essere minore, uguale o maggiore di di uno. Se il fattore di blocco F è minore di uno i record sono “bloccati” quando la dimensione del record logico è minore della dimensione del record fisico, “sbloccati” quando la dimensione del record logico è uguale alla dimensione del record fisico, “multiblocco” quando la dimensione del record logico è maggiore della dimensione del record fisico.
I files possono essere memorizzati come sequenza di caratteri e in questo caso sono chiamati files di testo in quanto il loro contenuto è leggibile con un editor di testo, o binari quando sono letti e scritti come sequenza di byte.
A sua volta i files possono essere con formato o senza formato nel caso di files di testo o strutturati nel caso di files binari.