當前位置:
首頁 > 知識 > JSON與XML互爭:這場戰役純粹是浪費時間!

JSON與XML互爭:這場戰役純粹是浪費時間!

90年代末,當專有標準和通信協議複雜化時,出現了兩種數據格式。一種是可擴展標記語言,作為現有標記語言標準的XML,目的是通過可選模式來存儲和定義文檔以及數據。另外一種是JSON(JavaScript Object Notation) ,它因JavaScript而誕生。與XML幾乎完全相反,這是一個序列化格式,要求也很簡單。

JSON與XML互爭:這場戰役純粹是浪費時間!

20世紀20年代,XML在應用程序開發和通信平台爆發,主要原因在於其易讀、易寫和可共享等優勢。隨著應用程序和平台的發展,API變得越來越精簡,JSON逐漸超越XML成為了程序員的首選數據交換格式。每個程序員都希望選擇一種簡單的數據結構來進行軟體開發,直到開發商用XML敲開了一扇新的大門之後,JSON才得以崛起。儘管JSON已經成為了事實上的通用語言,但其他幾乎所有標準都仍在使用和積極維護中。

正是因為這種轉變,才引起了一場不必要的爭論。

JSON是JavaScript的原生數據交換格式,比Web客戶端AJAX應用程序中的XML更容易處理。隨著伺服器端JavaScript(一個節點)的應用,Web開發發生了巨大變化。Web 2.0開始奏效,REST替代了API中的Web服務,JSON成為Web應用程序中的數據結構標準。Web開發不再受到解析數據結構的阻礙,曾經被瞧不上的Javascript一統客戶端和伺服器平台。

儘管JSON作為數據交換格式是非常好的,但由於程序員和供應商一直在努力將JSON擴展到其預期的範圍,事情就變得糟糕了。隨著敏捷開發時代的到來,軟體廠商以更高的速度更新和發布新產品。更快的發布周期通常會帶來巨大的成本,表現為過時的文檔或者破壞下遊客戶和其他依賴產品。為了解決這個問題,程序員和供應商就通過模式、命名空間和版本控制不斷擴張JSON,這些都是任意的和不可執行的。

其實,XML和JSON可以在一起玩得很好

事實是,XML和JSON是互補的兩種數據格式,程序員可以從二者之中受益。JSON優於數據交換,而不是數據建模,XML則優於數據定義,同時需要在前端進行更多集成。

隨著XML工具越來越多地添加JSON支持,程序員應該考慮在解決方案中使用這兩種數據格式:XML用於數據定義,JSON用於數據交換。

現在回頭看,一切關於JSON與XML的爭論似乎都沒有必要了。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 IT168企業級 的精彩文章:

雲計算重磅!雲安全聯盟發布重大更新指導方針4.0
惠普董事會主席惠特曼辭職,將出任Uber CEO?
物聯網調查報告:這些技能才是高薪人才的標配!

TAG:IT168企業級 |

您可能感興趣

TANC ShowroomVOL.3-親愛的,這場戰役你還缺件戰袍
混沌時代:Wintel無緣兩大戰役
就在昨晚,LPL上演「最下飯」戰役,EDG展現傳統手藝
DOTA2:VP擊敗Secret,本局或成為賽季最經典戰役!
3DM周「看」:傳《COD》取消戰役《戰神》&Labo開賣
KPL最慘戰役,QG飛牛Fly拿出本命英雄花木蘭,卻被WE全力碾壓
年輕的戰役——致EDG,致Iboy
滴滴的國際化戰役:新隊友是watchOS?
MSI宣傳片經典戰役回顧:廠長胖爹大戰Faker!
DICE介紹《戰地5》:我們可是有單人戰役的
小米的「手機+AIoT」雙引擎戰略已確定,5G戰役即將打響!
這款Nike Zoom Kobe 1 Protro配色,再現季後賽絕殺戰役
GC:我們試玩了《騎砍2》戰役 並和CEO聊了聊
4AM與澳洲TM經典戰役:到虎牙後的4AM,沒有他才是最強的
銀河戰役VGJ.T零封EG奪冠!sumail恐成EG最大軟肋
DOTA2-超級Major:5場史詩級戰役!液體3-2險勝VP問鼎冠軍!
中國移動的這場AI戰役,戰術有點厲害!
COD玩家大部分時間玩對戰 因此使命召喚15無戰役
印度打造國產四代半戰機,LCA為平台,戰役目標是殲10C
Oculus Go為Facebook的VR戰役拉開序幕