What is "serialization"

Usages

Serialization provides some advantages such as:

  • a simple and robust method of making persistent objects
  • a method for implementing remote procedure calls
  • an object distribution method, such as used in COM and CORBA.

For such functionalities to be enjoyed, the independence of architecture must be maintained. For example, a computer with a different hardware architecture should be able to consistently reconstruct the serial data stream.

Serialization also provides some disadvantages. Since coding is serial, to extract certain information from a data structure one must reconstruct the whole object before reading the information.

Support for programming languages

Various object-oriented programming languages support direct serialization:

Some of them are

  • Objective-C
  • Java
  • Delphi
  • C#
  • Visual Basic . NET
  • Coldfusion
  • Ocaml
  • Perl
  • Python
  • PHP

Ruby