XML 前幾年風行極了,好像什麼東西都要與 XML 扯上一點關係才可以。
應用程式的 configuration 檔要使用 XML 的格式(實在滿坑滿谷,最簡單的就是你的 Apache Tomcat 的 web設定檔),資料交換也要使用 XML(SOAP 就是這樣來的,交換的格式就是XML),聽說本來 Java 語言的演進中,也要將 XML 處理直接放在 Java 語言中處理,雖然到現在還沒看到蹤影。
XML 筆者個人沒有特殊的好惡,但搞到沒有使用 XML 就好像不對,筆者就覺得有點走火入魔了。其實 XML 主要是給機器看的,硬要給人看,實在是有點過份、有點累。
你喜歡 Servlet 的 web.xml 設定方法?筆者是不習慣的,還好 web.xml 沒有幾層,否則光對齊 tag 就暈了。
有許多東西是好的,但要強迫用到不合適的地方就過份,相信你有看到過有十幾層以上的 XML 檔。如果那只是用在機器間的交換,那還OK,但如果那個 XML 是要讓人寫出來或是讓人讀的,那就叫整人。
有許多東西是好的,但要強迫用到不合適的地方就過份,相信你有看到過有十幾層以上的 XML 檔。如果那只是用在機器間的交換,那還OK,但如果那個 XML 是要讓人寫出來或是讓人讀的,那就叫整人。
這種 XML 走火入魔的方式本來也影響到 web client 與 web server 的資料交換,鼎鼎有名的Ajax,那個「x」代表的就是 XML,意思是 web client與 server 間使用 XML 來交換。
很多 programmer 看久了這種 XML 不免眼花撩亂(誰說 web client 與 server 間的資料人不用看,很多時候 programmer 可是要看它個千百回!),這時就可證明 XML 實在不適合人來看。
慢慢有人厭倦了,既有人厭倦,就有人會提出不同的作法,JSON(JavaScript Object Notation)因此現出江湖。
相對於 XML,筆者更愛 JSON,現在正常的人應該不會使用 XML 在 Ajax 的呼叫中了吧(Ajax 要改個名叫 Ajaj 嗎?!)。
啊?你現在還在使用XML?也許該順應一下潮流換換囉。現在,可能只剩下SOAP這種老古董才會堅持一定要用那麼複雜的XML格式。
JSON 的例子說明「不要以為是好東西,就要給它用的舖天蓋地」,但 XML 可也不是壞東西,大家可不要誤筆者的意思,筆者的意思是合適的地方用,不合適的地方不要用,給人看的地方,就是不合適 XML 的地方,至於合適 XML的地方,就是用在機器與機器交換的地方。
既然 XML 還是個好東西,就有需要讓它變得更好用,在 Java 中有許多關於 XML 處理的package,這裡不多談。
Scala 比 Java 更進一步,直接在語言中支援 XML,讓 XML 就像整數與字串一樣,直接在語言就處理。
Scala 比 Java 更進一步,直接在語言中支援 XML,讓 XML 就像整數與字串一樣,直接在語言就處理。
「什麼是語言就直接支援 XML?」
看以下的簡單範例可以清楚點
1. 第一個指令直接使用 XML 資料,直接接指定給變數 x
注意:XML 資料並沒有使用字串括起來,這代表 XML 是 Scala 原生支援,稱為 XML literal
2. 第二個指令抓取 x 中 "b" tag 的資料
3.第三個指令抓取 x 中 "a" tag 的資料
對於處理 XML 這樣是否非常方便,直接在語言層次支援 XML 是 Scala 的一項大特色。
沒有留言:
張貼留言