Сериализация обычно относится к созданию версии данных (а не объектов), которую можно использовать для хранения (возможно, в файле), для передачи по сети или, возможно, просто для передачи между процессами / AppDomain
s / etc на одной машине.
Сериализация обычно означает запись данных в виде строки (например: xml / json) или в виде необработанного двоичного файла (byte[]
и т. Д.). Десериализация - обратный процесс; взятие необработанных данных (из файла, из входящего сетевого сокета и т. д.) и восстановление объектной модели.
Разница между использованием базы данных заключается в том, что она не имеет внутренней табличной разметки и не имеет реальной связи с базой данных; данные могут иметь любую форму и, как правило, более точно сопоставляются с объектно-ориентированным макетом, чем с таблицами / столбцами.
Большинство платформ имеют ряд инструментов сериализации. Например, это звучит так, как будто вы говорите о .NET - так что BinaryFormatter
(специфично для .NET), XmlSerializer
, DataContractSerializer
, Json.NET и protobuf-net / dotnet-protobufs - все подойдут.