我们都知道 JSON 和 XML 设计的初衷里都包含一点是对人类友好, 所以两者在这方面属于竞争关系. 而在 UI 描述上, 我觉得 XML 是比 JSON 要优异很多. 我们先来看一组简单的数据排版:

<ui:group layout="vertial">
<ui:block width="200" layout="horizontal">
<ui:input value="Search"></ui:input>
<ui:button>Search</ui:button>
</ui:block>
<ui:block width="400"></ui:block>
</ui:group>
  • ui:group和ui:block是元素(节点)
  • width 和 layout 叫做元素的属性
  • ui:block元素是ui:group元素的子元素

倘若由 JSON 描述, 将会变成:

{
"type": "ui:group",
"layout": "vertical",
"children": [
{
"type": "ui:block",
"width": 200,
"layout": "horizontal",
"children": [
{ "type": "ui:input", "value": "search" },
{ "type": "ui:button", "label": "Search" },
]
},
{
"type": "ui:block",
"width": 400,
},
],
}

可以看出来, XML 的数据会比 JSON 更符合人类对 UI 布局的描述, JSON 在这个场景中会更加偏向对机器友好.

最新文章

  1. Nginx
  2. 各版本CRM所需端口号
  3. 12.162s 1805.867s
  4. HackerRank &quot;Square Subsequences&quot; !!!
  5. iOS从不同页面跳转回到指定控制器
  6. 打开eclipse报错:发现了以元素 &#39;d:skin&#39; 开头的无效内容。此处不应含有子元素。
  7. Frameset使用教程 小结
  8. 避免在C#中使用析构函数Finalizer
  9. Using load balance for thrift servers
  10. Android Fragment生命周期及静态加载
  11. RatProxy
  12. 采用ACE登录设施(一)HelloWorld
  13. hdu_3001_Travelling(状压DP)
  14. asp.net 将ppt,word转化为pdf实现在线浏览详解
  15. 汽车Vin码识别——&#160;一款二手车行业值得拥有的OCR识别软件
  16. 如何使用一次for循环得到数组中第二大的数和第三大的数
  17. Java多线程1:进程和线程的区别
  18. 使用 nw-builder 构建跨平台桌面应用程序
  19. bzoj 2453 : 维护队列 带修莫队
  20. Javascript实现返回上一页面并刷新

热门文章

  1. 几行css3代码实现超炫加载动画
  2. 【问底】徐汉彬:PHP7和HHVM的性能之争
  3. 简单5步,释放Mac磁盘空间
  4. 【C#】获取桌面分辨率宽高(是否包含任务栏)
  5. guava处理字符串与List之间,字符串与map之间的转换&lt;转&gt;
  6. SpringBoot配置成Liunx服务
  7. jsp页面的el表达式取数据
  8. Lost connection to MySQL server at &#39;waiting for initial communication packet&#39;, system error: 0
  9. 关于解决用tutorial7教程中的代码打造一款自己的播放器中的声音噪音问题
  10. 【Java面试题】18 java中数组有没有length()方法?string没有lenght()方法?下面这条语句一共创建了多少个对象:String s=&quot;a&quot;+&quot;b&quot;+&quot;c&quot;+&quot;d&quot;;