Json描述

今天突然被问到Json这种表述语言,我竟然一时语塞,只知道“键值对”这种最基本的描述。可是查看维基百科才发现这样的描述也是不大正确的。正确的说法应该是“名值对”,Json的格式不像Hash是“键”,Key的属性是不能重复,当然作为Json的“名”,一定意义上也是不能重复的。
虽然我看Json的东西也不多,但是认识到我对Json认识的不完全,我回来还是补习了下Json的东西的。这里是JSON的官方网站,当时做项目就是从这里找到的google-gson,Google开发的一个非常棒的库,这个库能够将Java对象转成JSON格式,也很容易将JSON格式变成Java对象。虽然JSON官网非常简单,包含的内容却非常的多,从JSON的介绍到JSON相关的项目,到RFC文档。当然JSON本身就是一个简单的轻量级的文本格式。当时项目的时候就是将写好的XML格式变成JSON格式的,仅仅是因为JSON轻量级的。
写到这里我突然想起来我在阮一峰博客上面看到的一篇文章数据类型和JSON格式,这里引用他的一句话
结构上看,所有的数据(data)最终都可以分解成三种类型:标量(scalar),序列(sequence),映射(mapping)。数据构成的最小单位原来如此简单!难怪在编程语言中,只要有了数组(array)和对象(object)就能够储存一切数据了。
阮一峰总结的真是太深刻了,上个学期刚刚学习了Perl,那也是一门语法非常简单,却功能无比强大的语言。Perl的数组和哈希几乎构成了Perl的所有类型,那些更加复杂的数据类型都是在数组和哈希的基础上面构建起来的。阮一峰的一席话也同样让我恍然大悟,JSON是如此简单,却保留着数组和哈希的一切特性。
这番回顾加深了我对JSON的理解,也以此为以后做备忘。

Related Articles

Quote Of The Day