# Serialization

The code generated by SpaceDataStandards.org can be used with **any serialization** format supported in major programming languages.  In addition, it natively supports a **efficient** binary serialization format called [**Flatbuffers**](https://google.github.io/flatbuffers/)**,** which was created at **Google** and open-sourced in 2014.

**Flatbuffers** have the following **advantages** over other serialization methods:

* Access to serialized data without **upfront processing** (packing/unpacking)
* Memory **efficiency** and **speed** - only memory required to access data is that of the buffer; **0 additional memory required**.
* Flexibility - **forwards** and **backwards** **compatibility** via optional fields
* [Tiny Code footprint](http://google.github.io/flatbuffers/md__benchmarks.html)
* Strongly Typed - **errors caught** at compile-time instead of run-time
* Convenience - **Terse code** via generated C++ headers. Optional functionality to parse schemas and JSON-like representations at runtime efficiently if needed (**faster** and more **memory efficient** than other JSON parsers)
* **Cross-Platform**

More information is available [here](https://google.github.io/flatbuffers/flatbuffers_white_paper.html).
