Home

serialisieren

Serialisieren bezeichnet den Prozess, bei dem eine In-Memory-Datenstruktur oder ein Objekt in eine serielle Darstellung verwandelt wird, die gespeichert oder über Netzwerke übertragen werden kann. Das Gegenstück ist Deserialisieren, bei dem die serielle Repräsentation wieder in das ursprüngliche Objekt zurückverwandelt wird.

Es gibt textbasierte Formate wie JSON, XML oder YAML, die gut lesbar sind und plattformübergreifend unterstützt

In Programmiersprachen existieren unterschiedliche Mechanismen. Java nutzt Serializable-Objekte, Python bietet Pickle, und .NET verwendet verschiedene Serializer;

Anwendungsgebiete umfassen Persistenz, Replikation von Objekten über Prozessgrenzen hinweg, Netzwerkkommunikation (z. B. Remote Procedure Calls) sowie

Wichtige Herausforderungen sind Versions- bzw. Schema-Evolution, Kompatibilität von Feldern, der Umgang mit Referenzen und Zyklen sowie

Best Practices beinhalten die Wahl eines geeigneten Formats mit Blick auf Abwärtskompatibilität, die klare Trennung von

werden.
Binäre
Formate
wie
Protocol
Buffers,
MessagePack
oder
CBOR
sind
kompakter
und
schneller,
erfordern
aber
oft
eine
vordefinierte
Schema-Datei.
einige
Formate
wie
BinaryFormatter
gelten
heute
als
unsicher
und
sollten
vermieden
werden.
Caching.
Serialisierung
erleichtert
außerdem
die
Zustandsübertragung
in
verteilten
Systemen.
Unterschiede
bei
Endianness
bei
binären
Formaten.
Sicherheitsaspekte
betreffen
besonders
das
Deserialisieren
aus
unsicheren
oder
unbekannten
Quellen.
Daten
und
Code,
das
Vermeiden
der
Ausführung
von
Code
beim
Deserialisieren
und
das
Validieren
von
Daten.
Zudem
ist
es
ratsam,
robuste
Fehlerbehandlung
und
Zugriffskontrollen
zu
implementieren.