2011-03-04 103 views
9

在各种论坛和博客中,我看到有些人宣传HAML,有些人宣传HTML。使用HAML和HTML有什么优缺点?为什么使用HTML而不是HAML?

我只是想了解我错过了什么,如果我使用HAML赞成HTML(如果有的话)。

+10

我不得不谷歌什么HAML是什么,这种类型本身就是一个答案。 :)但是,我倾向于投票结束为主观和议论 - 有几十种标记语言,讨论每个人的优点和缺点,没有一些特定的焦点,对我来说毫无意义。 – 2011-03-04 13:00:38

+1

我喜欢HAML,但我想知道我是否会通过使用它将自己绘制到角落。我不是在寻找你对HTML和HAML的看法。 – Fossmo 2011-03-04 13:10:34

回答

4

Google HAML。我相信,你会得到相关的东西来理解它。

Haml的是:

  • 易于阅读和直观地表达你的DOM层次
  • 易学
  • 移植到其他语言
  • 精心维护,并有一个庞大的社区
  • 热门因为它借用了CSS语法
  • 几乎和普通的ERB一样快ERB
  • 使得许多类型的错误不可能(或很难)

的看这里:

+5

我同意,但会注意到HAML更适合开发人员,并且您会发现我的Web Designer更喜欢使用HTML。 – Iain 2011-03-04 13:07:37

3

使用HAML在HTML的主要缺点是简单的HTML正要HAML社区仍然是一个相对较小的社区。这无疑会使寻找开发人员在将来为您的项目开展一项更艰巨的任务。

但是,如果你有资源,你可能会认为这是一个优势。确保您只聘用了在HAML方面有能力和经验的开发人员。

其他主要一面,我可以看到的是,如果你有图形/网页设计模板上的工作,从你的开发团队分开,他们还必须熟悉HAML。正如你可以想象的那样,很少有能力的图形/网页设计师,而且很少有工具可以帮助他们。

+0

赦免任何不好的拼写/语法,这里迟到 – xzyfer 2011-03-04 13:09:35

14

您正试图比较苹果和橘子。浏览器只能理解HTML。 HAML只是一种模板语言,可以转换为HTML(例如相同的最终输出)。如果你发现HAML语法比HTML更容易,那就去做吧。然而,恕我直言 - 抽象出你正在生成的实际元素只是使应用CSS和JavaScript导航更加困难。

个人,如果我想“修整”我的HTML,我愿意把内容转换成标签(取决于你的服务器端技术)

<!doctype html> 
<html> 
<head>...</head> 
<body> 
    <x:awesomeListThing data="$foo"/> 

    <x:foreach data="$bar"> 
    <x:renderBazWidget/> 
    </x:foreach> 
    <div>random content that hasn't been "tagified" yet.</div> 
</body> 
</html> 

那么任何标签的模板内,你就可以看到实际的HTML正在生成的结构。

+0

用于编写HTML,当你想写HTML时。虽然你的例子中的类似XSLT的语法确实让我思考了两次; o) – roryf 2011-03-04 13:13:17

+0

hehe yeah XSLT乍一看可能有些压倒一切,但使用定制标签的想法是将代码的常见“碎片”分解成*可用*组件。如果做得好,视图标记非常干净,并且标记的维护使得全局修复/更新非常容易。即使你不使用任何if/else/foreach标签,个人“小部件”也变得更易于维护。 – scunliffe 2011-03-04 13:18:40

2

当主要的IDE(如集锦)学习解析HAML,我们可以回到这个问题。现在我看到HTML的优越性,它被普通的解析器广泛支持和理解。你得到正确的语法着色,任何错误或验证问题立即得到标记。 HAML并非如此。

此外,考虑网页模板。他们通常是(X)HTML + CSS,可供他们使用的模板或设计师为您剪裁的设计。获得一个HAML + SASS模板而不是通常的XHTML + CSS的几率是多少?

HAML需要获得更多的领域,它的社区需要更多的增长才能成为HTML的可行替代方案。目前大多数网页编码者甚至不知道HAML是什么,更不用说在HAML中写任何东西。

4

关于Stackoverflow - HTML有65k关注者。你会在很短的时间内得到答案,很可能有很多答案。 HAML拥有157名粉丝。简单的数学。