YAML的简单介绍

 
YAML是"Yet Another Markup Language(还有另一种标记语言)"的缩写,读音"yamel",一些GNU的爱好者也这样解释YAML:"YAML Ain't Markup Language" -- (YAML不是标记语言)。到底是不是标记语言,姑妄写之,姑妄看之:

----------------XML描述的一段数据--------------------
<?xml version="1.0"?>
<club>
<players>
<player id="kramnik"
name="Vladimir Kramnik"
rating="2700"
status="GM" />
<player id="fritz"
name="Deep Fritz"
rating="2700"
status="Computer" />
<player id="mertz"
name="David Mertz"
rating="1400"
status="Amateur" />
</players>
<matches>
<match>
<Date>2002-10-04</Date>
<White refid="fritz" />
<Black refid="kramnik" />
<Result>Draw</Result>
</match>
<match>
<Date>2002-10-06</Date>
<White refid="kramnik" />
<Black refid="fritz" />
<Result>White</Result>
</match>
</matches>
</club>
----------------换成YAML,将更加清晰易读--------------------
--- (这三个短线可不是我随便加的,那是YAML的分段标记)
players:
Vladimir Kramnik: &kramnik
rating: 2700
status: GM
Deep Fritz: &fritz
rating: 2700
status: Computer
David Mertz: &mertz
rating: 1400
status: Amateur
matches:
-
Date: 2002-10-04
White: *fritz
Black: *kramnik
Result: Draw
-
Date: 2002-10-06
White: *kramnik
Black: *fritz
Result: White
熟悉PYTHON的人应该知道,PYTHON语言没有明显的开始结尾指示符(C/C++/JAVA等有{ ... },VB,DELPHI有Sub...End Sub, If ... End If, XML也有明显的开始符<>和结尾符</>或者< .../>,但是PYTHON没有一个显式的结束符,全靠TAB来控制,YAML也同样是这样。

我个人认为这种方式的好处是强制让代码或者YAML文本具有更好可读性,当然缺点也是很显然的--一个不小心,语法错误或者不能正确解释。不过对于YAML,这种方式是太适合不过了。

XML现在是业界的标准,仿佛程序里面不整点XML好像跟不上潮流似的,就像现在一帮子人整WEB2.0,整AJAX,理念很先进,不过很多的东西都只是给程序员聊以自慰的技术而已,在他的简历上能写上懂XML,熟悉WEB2.0,参与过AJAX的项目。。。。。。其实用户真正要的是什么?快速的响应时间,简单易懂的操作界面,人性化的服务,我才不管你在后台玩儿什么高超的把戏呢!

很喜欢一老陈说的一句话:简约而不简单!
YAML便是这样,简约而不简单,LAMP也是这样,之所以把YAML介绍给大家,是因为YAML让我开始思考:在一个科技日新月异的今天,特别是IT技术,今天一个术语,明天一个概念,后天一个理念,大后天一个架构,搞得咱玩儿程序的人唯恐追之不及,搞得人心浮躁,不知所谓!

其实技术,应该回归自然,简单为王,生活也是如此! 有空的时候会把YAML的详细规范翻译过来,与大家分享!
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值