阅读背景:

二进制序列化与反序列化-Net理论篇下(一)

来源:互联网 

1. 总体的结构设计

思来想去还是没有画出自己想要的图来,姑且暂用这个吧,希望大侠见谅。首先我们需要一个窗口类以方便将内部实现和外部调用逻辑隔绝开,那么这里BsonConvert的地位自然就不言而喻的。 而具体操作它会委托给BsonSerializer去完成。BsonSerializer是一次序列化或者反序列化会话的起点。当每次会话开始,我们都需要实例化一个BsonSerializer的实例,而它的工作就是为每次会话准备充分:初始化一个二进制数据池,创建读写管道BsonWriter和BsonReader,同时生成BsonContract根协议。之后工作的中心转交到BsonContract,BsonContract会委托ConverterFactory工场去创建需要的类型转换器IBsonConverter,并接手数据池和读写同道控制转换器完成对某个特定类型实例的序列化和反序列化工作。而IBsonConverter会实现对具体某个类型的实例数据的序列化和反序列化以及最终的读写操作。思来想去还是没有画出自己想要的图来,姑且暂用这个吧,希望大侠见




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: