2008-09-17 80 views

回答

9

我同意塞爾吉奧; YAML提供了一種很容易被人類編輯的格式,也是清晰表示數據結構的好方法。

YAML往往更具人性化,IMO。

YAML更多的是數據序列化技術,而不是標記語言。

4

如果文檔需要人工編輯或創建,我會選擇YAML。只是一個想法。

7

YAML的主要優點是人的可讀性和緊湊性。哦,它在各種平臺和語言中得到了廣泛的支持。

YAML在Ruby社區非常受歡迎,在Rails和Merb中,它主要優先用於配置文件的XML。

1

YAML最適合哪種類型的應用/利用?

這很難明確回答。相反,我會嘗試提供一些YAML 不是好的例子(以我的拙見)。

<name type="string">Orion</name> 
<age type="integer">26</age> 

這是在XML中混合屬性和值都很有用的情況。 YAML沒有屬性,所以你必須使用類型推斷來決定什麼是日期/整數/字符串/等 - 這對於複雜或用戶定義的類型來說是失敗的。

<user> 
    .... 10 lines of stuff 
    <sub-user> 
    ...15 more lines of stuff 
    </sub-user> 
    .... 10 more lines of stuff belonging to user 
</user> 

這種情況下XML中的結束標記提供了很多好處。如果要在YAML中格式化上述數據,僅使用縮進來提供「範圍」,則要分辨事物的起始和結束位置會更困難。

良好的措施,這裏是從official yaml spec at yaml.org

YAML報價主要是一個數據序列化語言。 XML被設計爲與標準通用標記語言(SGML)向後兼容,因此存在許多設計限制,而YAML不共享。繼承SGML的傳統,XML旨在支持結構化文檔,其中YAML更緊密地針對數據結構和消息傳遞。在許多領域中,XML是先驅者,YAML是從XML和其他技術中汲取經驗教訓的結果。

0

我使用YAML作爲一種廉價且易於更換,以寫入特定領域語言(特別是在其他開發人員做保養的情況下,我不知道我會使用它時,非開發人員會維護它)

相關問題