Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->Linux程序设计 ->正文

用Perl 来创建可重用的Web应用程序

来源:IBM DW中国 作者:Eugene Logvinov  时间:2007-04-22 点击: [收藏] [投稿]
这样的 HTML 结构所接受。浏览器无法正确显示这类代码。另一个问题出现在和 JavaScript 同时使用模板的时候(例如,试着在浏览器窗口中打开 HTML::Template 2.2 模块中的 /templates/long_loops.tmpl)。

执行依次打开及关闭一个额外标签(两者均可能为空)会变得更加有效。一些句法类型也能起到帮助作用。一部分 HTML 设计人员更喜欢用在 PHP 中的 <??> 标签,或用在 ASP 中的 <%%> 标签。另外, _TMPL_TAG 能在 <A> 标签而不是 <?TMPL_TAG?> 中被有效使用。

可能还需要其它改进。当然,一个 HTML::Template 的新的和特定的派生类可能会有用。这就需要您复制并编辑巨大的 _parse() 方法,该方法是模块的核心。另一个更为灵活的解决方案是在未来能得以简便、快速地升级的对象技术基础上创建一个新的模块。遗憾的是您不能在 HTML::Template 模块中实现这一步。

用 CGI::Application 创建可重用的 Web 应用程序

CGI::Application 模块是专为创建可重用的 Web 应用程序而设计的,它使用了对象技术,并包括了 CGI 和 HTML::Template 模块。这一模块的观念简单而有效:应用程序驱动 Web 页,但反过来则不成立(就像 PHP、ASP、JSP 和 EmbPerl 等等)。Web 应用程序代码能保存在单个文件(模块)中。此外,该文件能包含完整的控制代码(客户端与 Web 页以及数据库和操作系统界面之间的交互作用)。

CGI::Application 模块对于大多数 Web 应用程序(包括留言簿)来说都是一流的解决方案。使用该模块能轻易地创建一个新的和特定的派生类,它带有新的方法和经过改进的基础类。还可以有一个继承下来的构造程序(有着留言簿专用的新参数)和一个继承下来的 load_tmpl() 方法(举例来说,若用特定的模板模块来代替 HTML::Template)。

结论

这种由受着单个 Perl 模块控制的 Web 应用程序来驱动 Web 页(模板)的设想对交互式 Web 应用程序特别有效。模板同样能驱动应用程序(在 CGI::Application 和 HTML::Template 模块中就不存在该功能)。留言簿说明了这种执行:模块形式包括了“名称”、“电子邮件”和“消息正文”等字段。由于不必在脚本中进行直接的字段定义,这些字段能由脚本轻易地从模板中获得。因此,我们就有了一个有重用性的应用程序:要修改应用程序,只需编辑模板就行了。

原文链接:http://www-128.ibm.com/developerworks/cn/linux/sdk/perl/perl-web/index.html



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:45分钟构建Moddle服务器   下一篇:Awk 实例(一)

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号