AData 是一个多语言的序列化库,和 protocol buffer 类似。
目前支持C++/Lua(5.1,5.2,5.3,jit)/C#,非常适合游戏的通讯协议和数据存储
Adata的优势,生成的代码量少,和protocol buffer比较代码量大幅减少,可读性强
功能上,除了protocol buffer支持的向前兼容,增加了向后兼容的支持
C++版特性,生成代码自动优化布局,对齐方式占用内存最少,性能强大,高于官方protocol buffer一个数量级,自动化生成代码只有头文件,使用只需要包含adata.hpp头文件,不需要编译等麻烦工作
lua版本特性,性能强大,高于云风实现的https://github.com/cloudwu/pbc,高于云风实现的https://github.com/cloudwu/sproto
luajit 版本特性,不依赖C++扩展,只需要2个lua文件就可以使用,适合客户端,性能依旧是亮点
C# 版本特性,只需要一个adata.cs就可以使用,性能还是强于protocol buffer的C#版本
如果喜欢json的通讯方式,又想用C++爽快的写,请移步 http://git.oschina.net/lordoffox/ajson 。