Cos'è la serializzazione?

Nella programmazione di computer, la serializzazione è il processo di assunzione di una struttura di dati memorizzata nella memoria locale e trasformarla in un flusso di byte che può essere trasmesso su una rete o memorizzata su un disco per essere riassemblato e utilizzato da un altro programma. La serializzazione può anche essere utilizzata per salvare lo stato di un oggetto in modo da eseguire a una funzionalità che eseguono una procedura che eseguono un RPC) procedura su un altro computer attraverso una rete. Questo meccanismo consente anche la distribuzione di oggetti di dati su un ampio sistema in rete.

Quasi ogni linguaggio di computer moderno ha un supporto nativo per la serializzazione o una libreria disponibile per aggiungere questa funzionalità. Quando un oggetto è serializzato, tutti i campi che possono essere scritti in una riga che si trasforma in una riga che si trasforma in una riga che si può essere scritti, che possono essere scritti in una riga di byt, che possono essere scritti che si possono chiudere i dati che si possono essere scritti che si possono chiudere in una riga di bidia produzioneStream. Il tipo di flusso di output non ha importanza e potrebbe essere un file o un socket di rete.

Una volta che i dati sono stati serializzati e inviati alla sua posizione finale, inizia il processo di deserializzazione. Il programma che legge il flusso di byte ripristina tutte le informazioni e li colloca in una nuova istanza dell'oggetto originale, creando una copia esatta. È importante capire che solo i dati che l'oggetto stava trattenendo è marshald; L'oggetto e i suoi metodi e altri dati di implementazione non lo sono. Ciò significa che il programma che deserializza i dati deve essere in grado di creare un'istanza della classe originariamente serializzata.

La serializzazione della struttura dei dati può essere utilizzata per una varietà di scopi. Le informazioni sull'oggetto possono essere archiviate su supporti fisici in modo che lo stato esatto di ogni oggetto possa essere ripristinato al punto in cui si trovava quando l'esecuzione del programma si interrompe.ND Messaggi a un altro computer che causerà l'esecuzione di una procedura remota. La serializzazione può anche essere utilizzata per confrontare in modo efficiente le variazioni dello stato nelle applicazioni in tempo reale.

Prima di usare la serializzazione degli oggetti, è importante comprendere alcune delle limitazioni che impone. Il più importante è che, attraverso il processo di conversione di un oggetto in un flusso di byte, i campi dichiarati come privati ​​saranno esposti. Durante la trasmissione del flusso di emessioni. Rischio.

Un altro fattore da tenere a mente è che la serializzazione funzionerà, in generale, solo con oggetti che sono esattamente gli stessi dell'oggetto serializzato. Se vengono aggiunti nuovi campi o metodi a un oggetto, la firma dell'oggetto cambierà. Ciò significherà che l'oggetto memorizzato sarà CausE un'eccezione e i dati diventeranno irrecuperabili fino a quando un'istanza dell'oggetto non modificato originale non tenta di ripristinarlo.

ALTRE LINGUE

Questo articolo è stato utile? Grazie per il feedback Grazie per il feedback

Come possiamo aiutare? Come possiamo aiutare?