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