序列化和将数据结构写入和读取二进制文件之间的区别是什么?

3

序列化有点像存储数据对象,使我们能够将它们传输到任何地方,但它与仅将对象或数据结构写入二进制文件有何不同...???

1个回答

4
序列化是另一种更正式的方式,意味着你正在生成一个对象或数据结构的表示,并将其存储在某个地方。 存储的目标可以是:文件、数据库、内存中的另一个位置等等。
“序列化”的名称意味着对象或数据结构的内容/状态将按顺序(串行)表示,这是计算机内存基本组织的方式:即作为一系列字节。
序列化是一个抽象的概念/过程,在一般意义上不意味着特定的表示。你可能会有二进制表示(二进制序列化)或文本表示(如 XML 或 JSON 等),还可能有其他表示形式。即使是二进制序列化,关于对象或数据结构的信息如何组织也可以以许多方式完成。
与序列化相对的是反序列化,它接受对象或数据结构的序列化表示,并重新创建或恢复对象或数据结构的状态为可用形式。

我们在写入二进制文件时仍然可以保持这样的顺序,对吗? - Sayan Paul
1
@SayanPaul - 当然可以。将对象或数据结构写入二进制文件只是序列化的一种可能方式。 - Mike Dinescu
关于函数命名,例如“deserialize_cat_from_db”和“read_cat_from_db”,你有什么看法? - Aleksejs Fomins

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接