Serialisierung

Eintrag zuletzt aktualisiert am: 13.11.2014

Serialisierung bedeutet die Umwandlung des Zustands eines Objekts in eine Folge von Bytes. Deserialisierung ist der umgekehrte Vorgang, bei dem aus einer Byte-Folge wieder ein programmierbares Objekt erzeugt wird. Dabei wird der ursprüngliche Zustand des Objekts wiederhergestellt. Serialisierung und Deserialisierung sind als synonym für die beim Remote Procedure Call (RPC) verwendeten Begriffe Marshaling und Unmarshaling zu sehen. Serialisierung und Deserialisierung ist auch im Rahmen von Webservices und bei der Persistierung von Objekten notwendig.

Als "Serializer" wird eine Klasse oder Funktion bezeichnet, die Serialisierung und Deserialisierung vornimmt.

Im .NET Framework gibt es mehrere unterschiedliche Serializer:
XML-Serialisierung: XmlSerializer, DataContractSerializer, NetDataContractSerializer
Binär: BinaryFormatter, DataContractSerializer, NetDataContractSerializer
JSON: DataContractJsonSerializer. Microsoft selbst verwendet aber mittlerweile Newtonsoft JSON.NET (http://james.newtonking.com/json)