我在周五看到了这篇文章,浏览了一下然后继续阅读,但今天晚上注意到它被斜线划掉了——这时我意识到作者是当前的CGI::Application维护者,所以我又看了一遍。
我第一眼看到它,似乎作者正在寻找一个漂亮、易于使用的预处理器脚本,用于从模板和内容文件中生成站点。为此,他最终推荐了ttree,它是模板工具包分发版的一部分。
但是,本文的真正要旨(可能应该在最后总结一下)是作者正在寻找DreamWeaver模板功能的免费OSS替代品。此功能允许开发人员创建一个带有内容占位符的模板,将其锁定,然后创建包含零碎内容的页面。最后,开发人员编译站点—从与模板合并的内容中创建最终的HTML页面。
现在,我可以看到这样的东西很有用。我已经在几个项目中使用了webmake,显然,在许多地方都使用PHP作为模板语言。不过,Slashdot上的几条评论也让人有些停顿。这些评论的语气大意是“真正的开发人员不应该使用DW;他们应该理解HTML并直接对其进行编码”。我的一部分觉得这是精英主义的——网络是一种平等主义的媒介,应该没有什么进入障碍。然而,作为我的webmaster-每个支付周期都获得报酬并以网络为生的专业人士-也非常同意这一点。
我曾与使用和依赖DW的个人一起工作过——无论是专业人士还是自由职业者。我看到该工具及其同类工具的问题恰恰在于它们赋予人们权力。让我解释一下。
我真的觉得任何人都应该能够出现在“网络”上。然而,HTML是一种脆弱的语言:微小的错误可能会导致页面呈现方式发生巨大变化——有时甚至会导致浏览器崩溃。我看到的问题是,在我看来,DW和其他GUI网页应用程序创建了垃圾HTML。我无法告诉您我不得不清理和重新格式化这些应用程序生成的多少页面。他们虚假地添加标签,通常是在空内容周围添加根本不需要的标签。
当个人既没有时间也没有兴趣学习HTML,而是继续使用该工具来创建页面时,问题就变得复杂了。他们会有一种虚假的成就感——当页面由于他们所做的编辑而莫名其妙地中断时,很快就会产生一种非常真实的无能感——尤其是当内容是包含其他文件的更大框架的一部分时。当然,作为网络专业人士,我得到报酬来修复这些错误。但我觉得这对每个人都是一种伤害——个人/公司基本上为内容的呈现支付了两次费用——一次是给生成它的人,第二次是给我修复错误。
这是我越来越依赖于数据库驱动的Web应用程序的很大一部分原因。然后内容进入数据库,并包含最少的(如果有的话)标记。然后它被注入到模板中,模板经过正式审查过程,并通过W3C验证程序,以防止显示问题。这使每个人都处于优势地位:编辑器生成内容,设计师创建外观,程序员开发使用模板映射内容的方法。
我内心仍有一部分在与我认为的精英立场作斗争。然而,我的另一部分一直在努力应对对所有网络专业人员提出的多任务处理要求——我们被期望成为编辑、平面设计师、程序员等等。在大多数情况下,如果我们在一两个这样的领域很强大,我们就很幸运了,更不用说跟上我们媒体不断变化的面貌了。