码迷,mamicode.com
首页 > 其他好文 > 详细

几种常见结构化数据的比较

时间:2015-10-03 17:01:43      阅读:388      评论:0      收藏:0      [点我收藏+]

标签:

在我刚接触windows编程的时候,一般用.ini文件。

后来,都是自己定义数据格式,自己实现数据的读写。

再后来,就是xml了,那时我比较习惯使用tinyXml。

现在呢?大家都在用Json。

为了追求性能,不少人已经将目光投向了protobuf和flatbuffer。

IT行业的变化就是这般的快。作为IT从业者,资讯这一块是要重视的。


老古董就不提了,让考古学家去深掘吧。本文讨论的是xml,json和protobuf,stackoverflow上找到了个不错的总结

Json

. human readable/editable

. can be parsed without knowing schema in advance

. excellent browser support

. less verbose than xml


XML

. human readable/editable

can be parsed without knowing schema in advance

standard for SOAP etc-------------?

good tooling support

pretty verbose


Protobuf

. very dense data

. hard to robustly decode without knowing the schema(data format is internally ambiguous, and needs schema to clarify)

. very fast processing

. not intended for human eyes(dense binary)

All have good support on most platforms.

Personally, I rarely use xml these days. If the consumer is a browser or a public API I tend to use json. For internal APIs I tend to use protobuf for performance.

个人的看法是:

1. 相对于xml,Json的结构更贴近于面向"对象"编程。Json更加简洁,表达同样的意思,json的字节数更少,需要传输的内容更少,相对更快。

2. 为什么要用protobuf?相对Json,它有什么优点?

    protobuf是二进制形式的,字节占用更小,速度更快。同时protobuf支持多种编程语言,方便数据交换,版本兼容性




几种常见结构化数据的比较

标签:

原文地址:http://my.oschina.net/u/1445604/blog/513344

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!