從純語言的角度來說,json 不適合強類型語言,但非常適合動態語言,xml 不適合動態語言但非常適合強類型的語言。c/c++/java 處理 xml 比處理 json 更容易。而 lua/python/ruby/javascript 壹類的語言處理 json 比處理 xml 更容易。
xpath 的引入只是使得處理 xml 終於能夠接近 json 的處理方式而已,它並不是壹種超越,而是說有了 xpath 之後,xml 的易用性站到 json 同壹條線上,xml 跟 json 孰優孰劣,嚴重依賴於妳使用它的編程語言,對於動態的弱類型語言來說,xml 沒有優勢,對於靜態的強類型語言來說,xml 優勢明顯。
更多的時候妳面對壹幫 java 工程師他們壹定會給妳整個 xml 格式,面對後面那些語言的擁護者他們多半會給妳弄個 json 格式。誰說語言與編程完全無關呢?語言不是那麽的重要,但也不是妳想象的那麽不重要。
也許,主流 c/c++/java 語言的 json 庫都很糟糕,也是這些語言不適合用 json 的壹個重要原因。