analysis of JSON /XML

JSON定义

JSON(JavaScript Object Notation)一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。可在不同平台之间进行数据交换。JSON采用兼容性很高的、完全独立于语言文本格式,同时也具备类似于C语言的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)体系的行为。这些特性使JSON成为理想的数据交换语言。

XML定义

扩展标记语言 (Extensible Markup Language, XML) ,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。

XML的优缺点

<1>.XML的优点
  A.格式统一,符合标准;
  B.容易与其他系统进行远程交互,数据共享比较方便。
<2>.XML的缺点
  A.XML文件庞大,文件格式复杂,传输占带宽;
  B.服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护;
  C.客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码;
  D.服务器端和客户端解析XML花费较多的资源和时间。

JSON的优缺点

<1>.JSON的优点:
  A.数据格式比较简单,易于读写,格式都是压缩的,占用带宽小;
  B.易于解析,客户端JavaScript可以简单的通过eval()进行JSON数据的读取;
  C.支持多种语言,包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等服务器端语言,便于服务器端的解析;
  D.在PHP世界,已经有PHP-JSON和JSON-PHP出现了,偏于PHP序列化后的程序直接调用,PHP服务器端的对象、数组等能直接生成JSON格式,便于客户端的访问提取;
  E.因为JSON格式能直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,且完成任务不变,并且易于维护。
<2>.JSON的缺点
  A.没有XML格式这么推广的深入人心和喜用广泛,没有XML那么通用性;
  B.JSON格式目前在Web Service中推广还属于初级阶段。

JSON和XML的比较

  • 可读性

XML有明显的优势,毕竟人类的语言更贴近这样的说明结构

  • 可扩展性

XML天生有很好的扩展性,JSON当然也有,没有什么是XML能扩展,而JSON却不能。不过JSON在Javascript主场作战,可以存储Javascript复合对象,有着xml不可比拟的优势。

  • 编码难度

XML有丰富的编码工具,比如Dom4j、JDom等,JSON也有提供的工具。无工具的情况下,相信熟练的开发人员一样能很快的写出想要的xml文档和JSON字符串,不过,xml文档要多很多结构上的字符。

  • 解码难度

    XML的解析方式有两种:一是通过文档模型解析,也就是通过父标签索引出一组标记;另外一种方法是遍历节点。这个可以通过递归来实现,不过解析出来的数据仍旧是形式各异,往往也不能满足预先的要求。

XML和JSON都使用结构化方法来标记数据,下面来做一个简单的比较。

<?xml version="1.0" encoding="utf-8"?>  

<country><name>中国</name>  

<province><name>黑龙江</name><cities><city>哈尔滨</city><city>大庆</city></cities></province>

<province><name>广东</name><cities><city>广州</city><city>深圳</city><city>珠海</city></cities></province>
<province><name>台湾</name><cities><city>台北</city><city>高雄</city></cities></province>

<province><name>新疆</name><cities><city>乌鲁木齐</city></cities></province>
用JSON表示如下:



  {name:"中国",</country>
  province:[{name:"黑龙江",cities:{city:["哈尔滨","大庆"]}},


                 {name:"广东",cities:{city:["广州","深圳","珠海"]}},


        {name:"台湾",cities:{city:["台北","高雄"]}},


       {name:"新疆",cities:{city:["乌鲁木齐"]}}]}

部分借鉴于:https://www.cnblogs.com/SanMaoSpace/p/3139186.html

    https://blog.csdn.net/sanpintian/article/details/7347711

非常感谢

转载于:https://www.cnblogs.com/sece/p/10633289.html

Processing+Build+Files+for+Dependencies+Analysis(处理依赖分析的构建文件)是一种用于构建和管理软件项目的方法。它可以帮助开发人员确定项目中的依赖关系,并确保这些依赖项在构建过程中正确地被解析和处理。 在软件开发中,项目通常会依赖于其他库、框架或模块。为了正确地构建和运行项目,开发人员需要确保这些依赖项被正确地安装和配置。Processing+Build+Files+for+Dependencies+Analysis提供了一种机制来自动化这个过程。 通常,处理依赖分析的构建文件会列出项目所需的所有依赖项,并指定它们的版本或范围。构建工具可以根据这些文件来下载、安装和配置这些依赖项。此外,构建文件还可以定义构建过程中的其他任务,例如编译源代码、运行测试等。 常见的处理依赖分析的构建文件包括: 1. Maven:用于Java项目的构建工具,使用pom.xml文件来管理依赖项和构建配置。 2. Gradle:一种通用的构建工具,支持多种编程语言和项目类型。它使用build.gradle文件来定义项目的依赖项和构建任务。 3. npm:用于JavaScript项目的包管理器,使用package.json文件来管理依赖项和构建配置。 4. sbt:用于Scala项目的构建工具,使用build.sbt文件来管理依赖项和构建配置。 这些构建工具提供了丰富的功能,可以帮助开发人员轻松地管理项目的依赖关系,并自动化构建过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值