在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

為什么JSON將逐漸取代XML?

共熵服務中心 ? 來源:未知 ? 2022-11-21 20:15 ? 次閱讀

文章轉發自51CTO 開源基礎軟件社區 OpenHarmony成長計劃啃論文俱樂部【FFH】OpenHarmony啃論文成長計劃---為什么JSON將逐漸取代XML?

1.關于作者

大家好!我是來自深圳技術大學FSR(編者注:FidelityFX Super Resolution超分辨率技術的縮寫)實驗室的同學,標題FFH就是FSRlab For Harmony!并且我也正在參加OpenHarmony成長計劃從論文到開源提交研究,以后我們也會陸續在這個社區記錄學習心得和體會。

在OpenHarmony成長計劃啃論文俱樂部里,FHH小組同學們與華為、軟通動力、潤和軟件、拓維信息、深開鴻等公司一起,學習和研究序列化相關技術…


2. 引言

相信大家不管是在鴻蒙應用開發,web開發或者小程序開發,都會用JSON(編者注:JavaScript Object Notation)或者XML(編者注:Extensible Markup Language 可擴展標記語言)進行數據的傳輸,大家對這兩個技術的使用并不陌生,但是我們往往只是局限在使用上,所以在闡述為什么XML會被JSON取代之前,我想先把這兩個東西的起源和由來都給大家簡單的科普一遍。


3. XML

3.1標記型語言

講XML之前,我們先來了解一下標記型語言,我就用通俗地語言描述一下,比如我現在要寫一篇博客告訴你們為什么XML會被JSON取代,那這篇博客里面會有標題,二級標題,代碼段,高亮文本等等,這些最終都會顯示在網站上。

那么問題來了,瀏覽器怎么知道我顯示地文字是標題還是高亮文本…

于是就有了Markdown這門標記語言,它就是用各種標記符號說明了哪里是標題,哪里是高亮文本。說白了,標記語言就是為了讓冗雜的數據結構化,使用標記語言后,能讓計算機和人能清晰辨別各類數據,如下例子,用#來標記一級標題,``內可以放高亮文本。比如網頁能按照標題,段落,圖片呈現,都得歸功于標記型語言HTML。

# 標題
`高亮文本`

3.2XML起源

最早在1969年,IBM開發了第一種文檔描述語言,用來解決不同系統中文檔格式不同的問題,把這種標記語言稱為通用標記語言GML(Generalized Markup Language),后面這門語言也被不斷改進:

GML(1969)—>SGML(1986 國際標準化組織采納)—>SGML(2018改進并完善)

SGML(編者注:Standard Generalized Markup Language 標準通用標記語言的縮寫)具有相當高的規范性和可擴展性,但是就是因為規范多,導致開發,學習,維護的成本就很高。

到了1989年歐洲粒子物理實驗室的研究員在SGML的基礎上,提出了HTML(編者注:HyperText Markup Language 超文本標記語言的縮寫),一種超文本的標記語言,簡單,通用,語法要求寬松(可以嵌套使用)。

然后隨著Web得發展,傳輸過程中負載的數據量越來越大,如果沒有結構化數據的話,處理傳輸的數據消耗會非常非常大,而且非常麻煩,而HTML重點是對于數據的顯示,不關心所描述的數據結構,缺乏對文檔數據含義的確切描述,不能滿足對各類信息的存儲,傳遞和搜索的需求,基于以上需求,又一次在SGML的基礎之上,簡化出一種規范,1996年,提出了另一種標記型語言命名為XML(可擴展標記語言),就這樣,XML出現了。XHTML(編者注:Extensible HyperText Markup Language 可擴展超文本標記語言的縮寫)是基于XML的一種語法更加嚴格的標記語言。

3.3XML示例

比如A公司要獲取到B公司名字叫Hagon的員工個人信息,這時B公司接受到A公司的請求后,就給A公司傳輸發送了如下XML格式數據:

<title>員工信息title>
<person id="666">
<name>Hagonname>
<age>66<age>
<sex>sex>
<job>頭鐵前端工程師job>
person>

因為結構清晰,A公司拿到數據后很方便地進行了處理。

3.4XML的瓶頸

雖然XML標準本身簡單,但與XML相關的標準卻種類繁多,W3C制定的相關標準就有二十多個,采用XML制定的重要的電子商務標準就有十多個。

隨著AJax(之前叫XMLHTTP,2005年后才叫Ajax)技術的流行,XML的弊端也越來越顯現:大家都知道XML實現是基于DOM(編者注:Document Object Model 文檔對象模型的縮寫)樹實現的,而DOM在各種瀏覽器中的實現細節不盡相同,所以XML的跨瀏覽器兼容性并不好,所以急需一種新的數據負載格式集成到HTML頁面中以滿足Ajax的要求。

這就到了我們要講的JSON。


4. JSON

4.1JSON的誕生

前面我們說了隨著Ajax的流行,而各種瀏覽器對DOM的實現細節不盡相同,所以會出現兼容性問題,這對前端開發同學來講真的是災難。因為一個功能可能需要用代碼去兼容各種不同的瀏覽器,還要調試,工作量巨大。

但是問題總有辦法能解決,那就利用所有主流瀏覽器中的一種通用組件——JavaScript引擎。這樣只要創造一種JavaScript引擎能識別的數據格式就可以啦!

然后就誕生了JavaScript Object Notation (JSON),它是一種輕量級的、基于文本的、獨立于語言的數據交換格式,它源于ECMAScript編程語言標準。

4.2JSON示例

也是上一個員工信息的例子,用JSON就可以表示為:

{
"title":"員工信息",
"id":666,
"name":"Hagon",
"age":"66",
"sex":"男",
"job":"頭鐵前端工程師"
}

第一點可以看到,可以看到沒有像XML一樣有太多嵌套的標簽,都是以類似鍵值對的形式表示,結構簡單。

第二點,在編寫XML時,第一行需要定義XML的版本,而JSON不存在版本問題,格式永遠不變。


5.XML與JSON的數據對比

說了那么多紙上的白話,接下來用數據說話。

5.1場景介紹

場景由一系列較小的試驗組成,這些試驗根據我們的每一項指標來確定JSON和XML在統計上是否不同。采用均值比較消耗時間檢驗。我們將20000、40000、60000、80000和100000個編碼對象發送到服務器,并收集每種情況的指標。表3、4和5顯示了從這些試驗中獲得的指標。

5.2時間消耗

從下面這張表格上,不難看出XML處理相同數據的時間消耗大約是JSON的30倍。

5.3CPU及內存利用率

下面兩表分別是JSON和XML的CPU和內存利用率數據。

對應的圖形化表達如下:從左到右依次是用戶CPU利用率的平均百分比,系統CPU利用率的平均百分比和內存利用率的平均百分比。

可以看出,Figure3顯示了JSON每次試驗的平均CPU和內存利用率。圖4展示了XML每次試驗的平均CPU和內存利用率。Figure5通過在同一個圖上繪制Figure3和Figure4(方便對比),說明了JSON的資源利用率和XML的資源利用率之間的差異。上圖數據表明,XML使用的用戶CPU利用率整體上明顯低于JSON。JSON和XML編碼的傳輸在服務器上使用的內存量幾乎相同(圖中表面XML內存利用率的淺藍色折線被重疊遮住了)。

5.4總結

在上面的實驗數據可以看到,JSON的性能明顯強于XML。

XML與JSON在web不斷發展且傳輸數據量日益增大的背景下, 在要求算力的時代下,JSON毫無疑問會是更加優秀的一方。并且現在也又很多JSON的解析器,比如Gson,FastJson,Jackson等,這些解析器也在不斷助力JSON的發展。

6.參考文獻

Comparison of JSON and XML data interchange formats: A case study
https://www.researchgate.net/publication/220922905_Comparison_of_JSON_and_XML_data_interchange_formats_A_case_study

<本文完>


寫在最后


OpenHarmony 成長計劃—“啃論文俱樂部”(以下簡稱“啃論文俱樂部”)是在 2022年 1 月 11 日的一次日常活動中誕生的。截至 3 月 31 日,啃論文俱樂部已有 87 名師生和企業導師參與,目前共有十二個技術方向并行探索,每個方向都有專業的技術老師帶領同學們通過啃綜述論文制定技術地圖,按“降龍十八掌”的學習方法編排技術開發內容,并通過專業推廣培養高校開發者成為軟件技術學術級人才。


啃論文俱樂部的宗旨是希望同學們在開源活動中得到軟件技術能力提升、得到技術寫作能力提升、得到講解技術能力提升。大學一年級新生〇門檻參與,已有俱樂部來自多所高校的大一同學寫出高居榜首的技術文章。


如今,搜索“啃論文”,人們不禁想到、而且看到的都是我們——OpenHarmony 成長計劃—“啃論文俱樂部”的產出。






OpenHarmony開源與開發者成長計劃—“啃論文俱樂部”學習資料合集


1)入門資料:啃論文可以有怎樣的體驗

https://docs.qq.com/slide/DY0RXWElBTVlHaXhi?u=4e311e072cbf4f93968e09c44294987d


2)操作辦法:怎么從啃論文到開源提交以及深度技術文章輸出https://docs.qq.com/slide/DY05kbGtsYVFmcUhU


3)企業/學校/老師/學生為什么要參與 & 啃論文俱樂部的運營辦法https://docs.qq.com/slide/DY2JkS2ZEb2FWckhq


4)往期啃論文俱樂部同學分享會精彩回顧:

同學分享會No1.成長計劃啃論文分享會紀要(2022/02/18)https://docs.qq.com/doc/DY2RZZmVNU2hTQlFY

同學分享會No.2 成長計劃啃論文分享會紀要(2022/03/11)https://docs.qq.com/doc/DUkJ5c2NRd2FRZkhF

同學們分享會No.3 成長計劃啃論文分享會紀要(2022/03/25)

https://docs.qq.com/doc/DUm5pUEF3ck1VcG92?u=4e311e072cbf4f93968e09c44294987d


現在,你是不是也熱血沸騰,摩拳擦掌地準備加入這個俱樂部呢?當然歡迎啦!啃論文俱樂部向任何對開源技術感興趣的大學生開發者敞開大門。



掃碼添加 OpenHarmony 高校小助手,加入“啃論文俱樂部”微信群


后續,我們會在服務中心公眾號陸續分享一些 OpenHarmony 開源與開發者成長計劃—“啃論文俱樂部”學習心得體會和總結資料。記得呼朋引伴來看哦。

























原文標題:為什么JSON將逐漸取代XML?

文章出處:【微信公眾號:開源技術服務中心】歡迎添加關注!文章轉載請注明出處。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 開源技術
    +關注

    關注

    0

    文章

    389

    瀏覽量

    7963
  • OpenHarmony
    +關注

    關注

    25

    文章

    3728

    瀏覽量

    16395

原文標題:為什么JSON將逐漸取代XML?

文章出處:【微信號:開源技術服務中心,微信公眾號:共熵服務中心】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    think-cell——使用JSON數據實現自動化(一)

    您可以使用 JSON 中的數據來復制最初作為模板創建的圖表,并為其提供新的數據表。您可以控制使用特定模板構建新演示文稿的順序。模板也可以多次使用。 PowerPoint 模板和 JSON 數據都可以
    的頭像 發表于 01-02 13:37 ?67次閱讀
    think-cell——使用<b class='flag-5'>JSON</b>數據實現自動化(一)

    JSON協議是什么,物聯網中的RTU中如何使用JSON協議和服務器交互

    一 概述 1.1 什么是 JSON JSON是JavaScript Object Notation的簡稱,中文含義為“JavaScript 對象表示法”,它是一種數據交換的文本格式,而不是一種編程
    的頭像 發表于 09-25 16:14 ?890次閱讀
    <b class='flag-5'>JSON</b>協議是什么,物聯網中的RTU中如何使用<b class='flag-5'>JSON</b>協議和服務器交互

    多路復用器取代繼電器應用說明

    電子發燒友網站提供《多路復用器取代繼電器應用說明.pdf》資料免費下載
    發表于 09-11 10:05 ?0次下載
    多路復用器<b class='flag-5'>將</b><b class='flag-5'>取代</b>繼電器應用說明

    可以使用JSONprov-config參數從網頁發送到esp8266嗎?

    請求。所以另一個意識形態。為什么不在Protocomm之外制作另一個簡單的httpd/task來監聽GET請求呢?而且它不起作用 我該怎么辦,我該怎么辦?請。 其他問題。我可以使用 JSON prov-config 參數從網頁發送到 esp8266 嗎?
    發表于 07-09 07:41

    鴻蒙語言基礎類庫:ohos.convertxml xml轉換JavaScript

    轉換xml文本為JavaScript對象。
    的頭像 發表于 07-08 15:54 ?441次閱讀
    鴻蒙語言基礎類庫:ohos.convertxml  <b class='flag-5'>xml</b>轉換JavaScript

    微軟Windows 10/11系統新增PowerToys AI高級粘貼功能

    以C++到Python的轉化為例,只需輕松復制一段C++代碼,再按下特定快捷鍵即可完成自動化轉換。此外,微軟還在Build 2024開發者大會上展示了如何利用PowerToysXML快速轉換為JSON
    的頭像 發表于 05-28 10:39 ?714次閱讀

    扎心靈魂小拷問:有了AI編寫代碼之后,軟件工程師會被AI取代嗎?

    軟件開發者們有很多讓他們焦慮的事情。他們最擔心的不再是如何用他們最喜歡的編程語言(C、C++、Erlang、Java等)表達最新的算法。相反,這種擔憂正逐漸被人工智能(AI)所取代。 在這里,我們探討AI編寫代碼的過程,并回
    的頭像 發表于 05-24 19:17 ?666次閱讀
    扎心靈魂小拷問:有了AI編寫代碼之后,軟件工程師會被AI<b class='flag-5'>取代</b>嗎?

    ?PLC設備通過智能網關采用HTTP協議JSON文件對接MES、ERP等系統平臺

    )配置JSON文件的字段與PLC寄存器地址等參數即可。 智能網關IGT-DSER支持POST/GET/PUT等多種方法,可同時作為HTTP協議的客戶端和服務端。作為客戶端通訊時JSON文件提交
    發表于 05-13 12:04

    OpenHarmony語言基礎類庫【@ohos.xml (xml解析與生成)】

    XML文本轉換為JavaScript對象、以及XML文件生成和解析的一系列接口。
    的頭像 發表于 05-08 17:05 ?873次閱讀

    PLC采用HTTP協議JSON文件對接MES等服務系統平臺

    文件的字段與PLC寄存器地址,配置URL即可。支持POST/GET/PUT等多種方法。智能網關IGT-DSER可同時作為HTTP協議的客戶端和服務端。作為客戶端通訊時JSON文件提交給HTTP
    發表于 03-25 14:25

    【JAVA UI】【HarmonyOS】【Demo】 鴻蒙如何進行 xml 解析

    【鴻蒙】鴻蒙如何進行數據解析 【問題描述】有時候我們從服務器獲取是 xml 格式數據,我們需要將 xml 轉化成 model 對象,該如何使用呢?下面舉個例子說明一下,分以下幾步進行 1.準備條件
    的頭像 發表于 02-19 15:59 ?586次閱讀
    【JAVA UI】【HarmonyOS】【Demo】 鴻蒙如何進行 <b class='flag-5'>xml</b> 解析

    XML在HarmonyOS中的生成,解析與轉換(下)

    一、XML 解析 對于以 XML 作為載體傳遞的數據,實際使用中需要對相關的節點進行解析,一般包括解析 XML 標簽和標簽值、解析 XML 屬性和屬性值、解析
    的頭像 發表于 02-18 10:07 ?754次閱讀

    XML 在 HarmonyOS 中的生成,解析與轉換(上)

    一、XML 概述 XML(可擴展標記語言)是一種用于描述數據的標記語言,旨在提供一種通用的方式來傳輸和存儲數據,特別是 Web 應用程序中經常使用的數據。XML 并不預定義標記。因此,XML
    的頭像 發表于 02-18 09:35 ?673次閱讀

    鴻蒙OS開發-(用xml寫查詢語句+xml使用)

    在C#中我們常用來當做一個小型的數據庫來使用,我們可以信息保存在XML文檔中,或者從XML文檔中獲取數據。這樣就必須使用到XML文檔的數據讀取。
    的頭像 發表于 01-26 17:51 ?670次閱讀

    ?PLC從HTTP服務端獲取JSON文件,解析數據到寄存器

    智能網關IGT-DSER集成了多種PLC協議,方便實現各種PLC與HTTP服務端之間通訊。通過網關的參數配置軟件綁定JSON文件的字段與PLC寄存器地址,配置URL,即可采用POST命令,JSON
    發表于 01-24 09:47
    主站蜘蛛池模板: 天天操夜| 涩综合| av福利网址网站| 亚洲国产精品第一页| 亚洲第一页视频| 超级淫小黄文大全很污的那种| xxⅹ丰满妇女与善交| 亚洲欧洲色| 色婷婷六月丁香七月婷婷| 人成网站在线观看| 久久夜色精品国产亚洲噜噜| 国模在线| 亚洲欧美国产五月天综合| 欧美夜夜| 1024你懂的国产精品| 人人干人| 成人5252色| 亚洲光棍天堂| 性色a v 一区| 在线种子资源网| 亚洲第一视频区| 一级毛片视频在线| 三级在线看| 狠狠色综合久久婷婷| 亚洲黄色网址大全| 国产综合视频| 又粗又大的机巴好爽欧美| 中文字幕卡二和卡三的视频| 色婷婷六月丁香在线观看| 美国一级毛片片aa久久综合| 成年女人在线观看| 免费大片av手机看片| 黄色网在线看| 亚洲欧美日韩动漫| 美女被拍拍拍拍拍拍拍拍| 99久久免费精品高清特色大片| 成人在线免费电影| 手机看片1024久久| 55夜色66夜色国产精品站| 一级毛片aaaaaa视频免费看| 日本人爽p大片免费看|