为什么XML这么笨重的数据结构仍在广泛应用
2个回答
2015-07-20
展开全部
因为占了先机。这个格式最初就已经被定义出来了,并且被应用到很多地方,再想改,代价很大。
从纯语言的角度来说,json 不适合强类型语言,但非常适合动态语言,xml 不适合动态语言但非常适合强类型的语言。c/c++/java 处理 xml 比处理 json 更容易。而 lua/python/ruby/javascript 一类的语言处理 json 比处理 xml 更容易。
xpath 的引入只是使得处理 xml 终于能够接近 json 的处理方式而已,它并不是一种超越,而是说有了 xpath 之后,xml 的易用性站到 json 同一条线上,xml 跟 json 孰优孰劣,严重依赖于你使用它的编程语言,对于动态的弱类型语言来说,xml 没有优势,对于静态的强类型语言来说,xml 优势明显。
更多的时候你面对一帮 java 工程师他们一定会给你整个 xml 格式,面对后面那些语言的拥护者他们多半会给你弄个 json 格式。谁说语言与编程完全无关呢?语言不是那么的重要,但也不是你想象的那么不重要。
也许,主流 c/c++/java 语言的 json 库都很糟糕,也是这些语言不适合用 json 的一个重要原因。
从纯语言的角度来说,json 不适合强类型语言,但非常适合动态语言,xml 不适合动态语言但非常适合强类型的语言。c/c++/java 处理 xml 比处理 json 更容易。而 lua/python/ruby/javascript 一类的语言处理 json 比处理 xml 更容易。
xpath 的引入只是使得处理 xml 终于能够接近 json 的处理方式而已,它并不是一种超越,而是说有了 xpath 之后,xml 的易用性站到 json 同一条线上,xml 跟 json 孰优孰劣,严重依赖于你使用它的编程语言,对于动态的弱类型语言来说,xml 没有优势,对于静态的强类型语言来说,xml 优势明显。
更多的时候你面对一帮 java 工程师他们一定会给你整个 xml 格式,面对后面那些语言的拥护者他们多半会给你弄个 json 格式。谁说语言与编程完全无关呢?语言不是那么的重要,但也不是你想象的那么不重要。
也许,主流 c/c++/java 语言的 json 库都很糟糕,也是这些语言不适合用 json 的一个重要原因。
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询