Serialization usually refers to the creation of a version of data (rather than objects) that can be used for storage (possibly in a file), for transmission over the network, or perhaps only for transfer between processes / AppDomain /, etc. by one machine.
Serialization usually means writing data as a string (think: xml / json) or as a binary file (a byte[] , etc.). Desicialization is the reverse process; taking raw data (from a file, from an incoming network socket, etc.) and restoring the object model.
The difference between using db is that it does not have an internal table layout and does not have a real database binding; data can be of any shape and tend to be more accurately mapped to an object-oriented layout than to row and column type tables.
Most platforms have a number of serialization tools. For example, it looks like you're talking about .NET - so BinaryFormatter (.NET-specific), XmlSerializer , DataContractSerializer , Json.NET and protobuf-net / dotnet-protobufs will qualify.
Marc gravell
source share