序列化
winS for Unity 使用 winML 作为框架默认的序列化方案。
关于winML
winML 是 winS for .Net© 下的基础序列化库。
在Unity引擎下,winML以 动态链接库 的方式随包提供,且非必要时不会引入最新版本。
winML
winML 是一种序列化格式,您可以用它高效的序列化 C# 数据。
设计理念
我们希望设计一种 C# 序列化格式,它拥有文本格式的可读性和可维护性,又兼顾二进制格式紧凑和快速的特点,同时还有强大的易用性。 基于此理念,我们在不断迭代中设计了 winML。
特点
winML提供完整的 C# 基元类型支持,它具有以下特点:
-
无注入 :没有任何动/静态代码生成,仅通过编码达到最佳性能;
-
自定义数据:您可以自定义除了基元类型之外的所有数据的序列化/反序列化方式;
-
完整多态支持:支持完整的多态序列化和反序列化,根据实际类型创建实例;
-
泛型与值类型:序列化/反序列化任何泛型和值类型,支持嵌套;
-
自动类型纠错:在内部自动修复可隐式转换的错误类型;
-
引用与循环引用:自带引用关系数据,不会导致引用丢失或生成包含具有相同数据的不同对象;