使用dTemplate实现动态Web模板

ZDNet软件频道 时间:2004-10-14 作者:Builder.com |  我要评论()
本文关键词:
dTemplate是Perl的网站设计模板系统,本文将讲述如何使用这一模板系统将内容从代码之中分离出来。
本文译自Builder.com,未经许可

请勿转载

脚本语言,比如PHP和Perl都可以通过在HTML标记中编写代码以建立动态Web页。这些代码处理的是一些“苦活”,包括:连接到一个数据库,处理用户输出,执行各种计算,生成与其它页面相互联合的输出。这一方法唯一的问题是:你的代码在外表上看似一碗“意大利式面条”,因为HTML标记与脚本函数之间都相互紧密地纠缠在一起。

这也就是很多开发人员寻求更高效率地构建动态Web页方法的原因。在更为高效率的方法中,HTML标记或者布局代码从操作网页的逻辑或者函数中分离出来。这就意味着Web设计者必须能够不依赖于专门从事“网页如何工作”的开发人员,而在“网页外形”中独立工作。对于从不同来源(包括XML,RDF,RSS,MySQL)获得数据的网页内容,可以通过一个内容层来引入另一层次的分离,即所谓的“网页包含的内容”。

在本篇文章中,我将介绍使用dTemplate来构建Web页面的另一种更高效率的方法。这是一种基于Perl模板引擎的方法,你将学会一些基本的用法,以如何从商业逻辑中分离页面布局而开始,以如何联合多种模板来生成一个单一页面而结束。

 

模板引擎如何工作

Web开发的层叠方法(tiered approach)的一个重要部分是“模板化引擎”,这一方法可以使得设计者建立一个用户界面的页面模板。典型的这类模板并不包含任何数据,相反,它们只包含数据的占位符号(placeholders),这些占位符号可以在运行时间被模板引擎自动地被一些内容所取代。从多种数据源获得的内容,比如任一特定的脚本函数,都可以从布局模板中独立地建立。

当页面收到用户请求时,模板引擎将使用商业逻辑将页面布局结成一体,并提供一个复合外形。页面布局与内容之间的独立使得设计者与开发人员同时工作在相同的页面成为可能,而二者之前不会相互影响或者在职责上发生重叠。

当前,针对于PHP和Perl的模板引擎多种多样。其中,我所使用的是名为dTamplate的模板,这一模板具有快速、稳定、以及几乎完整特性的特点(你寻找一个模板系统通常遵循的三大要素)。

Dtamplate由GPL获得许可并由BalázsSzabó维护,它由C扩展的Perl语言来编写,可以从CPAN主页中下载。详细安装方法可见于下载的压缩文档中,但安装Dtamplate的最为简单的方法是使用CPAN shell,即如下所示:

shell> perl -MCPAN -e shell

cpan> install dTemplate

 


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134