note/程序开发/工具开发/序列化.md
2023-08-04 17:10:41 +08:00

920 B

你要做什么

解析文件代码太复杂,不统一。希望能制作出新的文件语言,能方便的解析所有文件,支持序列化与反序列化。

  • 能快速高效的解析文件OBJ、XML、JSON...
  • 占用空间小,

数据内容

数据拆分与合并

二进制流

  • 数据分段
  • 数据分层

语言描述

内存对象

数据解析

词法解析

语法解析

数据操作

序列化

  • 对象顺序 + 数据对象 = 二进制流

反序列化

  • 二进制流
  • 数据地址+数据类型 = 数据对象

数据对象

数据类型

  • 基础类型
    • 数据大小固定
  • 依赖类型
    • 数据大小与数据内容有关

复合对象

  • 数据类型组合得到对象

数据语言

对象描述

顺序描述

解析描述

示例

XML

COFF ==> Header DataSet
Header ==> 

JSON

INI