就Tim Bray對JSON和XML的比較的幾點看法
Tim有一篇有趣的帖子,這篇帖子比較了JSON和XML。他的比較讓我對其中的一些細節產生了興趣。
就這篇帖子,我有一些具體的提問:
1、我沒有找到為什麼JSON比XML擁有不同的流特性的原因。我所編寫的每個JSON分析器都在底層有一層用於流的輸入輸出,並且就像大多數時興XML棧一樣,擁有一個針對上一層的延遲快取機制(和型別對映)。那為什麼說XML天生就更適於流處理?
2、正如在註釋中,Joe Gregorio針對Tim的貼子的闡述,我也偏好JSON只允許基於UTF格式編碼的簡化。
3、Tim闡述道當遇到處理資料順序的情況時使用XML,但是JSON擁有一個完美的順序排列器(陣列),可以被用於很多情況。
4、我也沒有購買JSON,這不是什麼題外話。沒有什麼東西可以阻止JSON價值的追捧者忽略沒有意義的欄位標籤。當然,這需要通過使用慣例來避免名稱空間衝突,但是我不信在同XML的名稱名稱生存了幾乎10年之後,這種做法還是一件糟糕的事情。
5、至於在文字處理上,(相對於XML)我喜歡JSON。你可以巧妙地區分數字和看起來像數字的文字,並且更加重要的是,你可以在無需恢復到base64編碼的情況下,表示含有控制符的字串。當然,我還是沒有拉下有意義的空白和無意義的空白之間的不明確性。對於JSON來說,那很明確,來自於資料本身。對於XML來說,你需要DTD或schema來確定。Tim肯定就是Text先生,所以我很肯定他一定會告訴我要想要這些東西是錯誤的想法。
6、至於產出能力,我沒有看見這與{ “FirstName”: “Tim”, “LastName”: “Ewald” }XML的等同部分(我應該在這將它打出來,但是對於我這一生,我都不能讓.TEXT正確的逃脫萬物的束縛)相比有多差勁。當然,我能將XSLT應用於後者來產出HTML,但是如果我是一個Swing、AWT、User32或者是Avalon使用者又會怎樣呢。
簡而言之,我想XML對於JSON最大的優勢在於它的慣性。在XML這裡,有一大堆處理它的工具和一大堆以XML為載體的資料。
要取代XML,JSON還要翻過一座大山。它的歸宿是新的、不再擁有Javascript/Browser元件的應用程式(感謝Dare)
上面所述的立場中,有它的簡單性和流行趨勢因素在裡面。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1492200
相關文章
- XML之父Tim Bray:從谷歌離職後想說的XML谷歌
- 還在比較 JSON 和 XML?Stop!JSONXML
- 關於負載平衡和分片 - Tim Bray負載
- TIM1比較模式模式
- 對MVP和MVVM的一點看法MVPMVVM
- SQLServer中XML與JSON應用比較SQLServerXMLJSON
- XML Schema和XML DTD的資料型別比較XML資料型別
- Tim Bray 又有驚人之語:PHP比Java更具有伸縮性PHPJava
- XML 與 JSON 優劣對比XMLJSON
- Tim Bray:2014年軟體之路
- Java幾種常用JSON庫效能比較JavaJSON
- Go 與 C++ 的對比和比較GoC++
- 幾種排序的比較排序
- 解析XML和JSON內容的一點技巧XMLJSON
- 對 Guice Interceptor 的一點 自己 的看法GUI
- 【HTML與XML的對比】HTMLXML
- 對於Lumen和Laravel的看法Laravel
- python比較json/dictionary的庫PythonJSON
- 線上json差異比較工具--遞迴比較兩個json的節點和值的差異,並支援差異數預覽和逐個檢視差異JSON遞迴
- SQL、NoSQL和NewSQL的優缺點比較SQL
- XML和JSON的介紹XMLJSON
- 分享幾點關於 web 前端開發的看法Web前端
- Protobuffer 和 Json 深度對比JSON
- 幾個分析函式的比較函式
- Cesium 比較常用的幾個方法
- java中四種操作xml方式的比較JavaXML
- 我對部落格的理解和看法
- 對於iOS效能優化的一點看法iOS優化
- 對比和分析幾個流行的前端框架前端框架
- 我對李世石 AlphaGo 人機世紀圍棋大戰的幾點看法Go
- JSON-RPC-Java 和DWR比較(轉)JSONRPCJava
- 分割陣列的幾種方法比較陣列
- 【MyBatis】幾種批量插入效率的比較MyBatis
- 幾個比較火的BI分析工具
- HTTP協議幾個版本的比較HTTP協議
- oracle幾個比較有用的語句Oracle
- 幾種中文字型的比較
- Zope的優點和Apache+PHP+MySQL的比較(轉)ApachePHPMySql