WEB开发网
开发学院服务器WEB服务器综合平台 Zope的优点和Apache+PHP+MySQL的比较 阅读

Zope的优点和Apache+PHP+MySQL的比较

 2007-04-26 15:47:47 来源:WEB开发网   
核心提示:Zope作为编程和定制环境的优势:Zope有dtml(动态模板标记)语言来嵌入HTML中,实现网页的动态化,Zope的优点和Apache+PHP+MySQL的比较(2),简单地使用地形式就可以插入动态内容,由于可以方便地加入属性和方法以及“获取”功能,cmf对Zope的用户管理、文档管理、pro

Zope作为编程和定制环境的优势:

Zope有dtml(动态模板标记)语言来嵌入HTML中,实现网页的动态化。简单地使用地形式就可以插入动态内容。由于可以方便地加入属性和方法以及“获取”功能,文档具有极为丰富的变量环境。可以比一般的客户端包含提供更强大的功能。又有的形式来方便地获取多个文件地内容。在dtml中还可以嵌入Python表达式。这样,不用编程就具有强大的动态网页功能,实现导航功能等也轻而易举。这些功能的实现比PHP等语言要容易的多。

如果要加入复杂的功能,可以用脚本模块来实现函数和复杂操作,然后在dtml中调用脚本模块,这样,实现了逻辑和表现的分离。在Zope中允许用Python、Perl和sql做脚本语言,各种脚本可以相互调用,这样实现了多语言的混合编程,实现了.NET要实现的混合编程的目的。Zope为脚本语言提供了统一的Zope API。用这种方式(以dtml为媒体)Perl在unix中也可以实现嵌入HTML的效果。Perl爱好者有福了。在这里可以直接用sql操作数据库,免去了把sql嵌入其他语言的麻烦。

Zope提出了zclass的概念,在一个product中捆绑了针对特定用途数据的一系列的属性和方法,甚至编辑和查看界面、特定权限、帮助等。比如把任务作为一个zclass,任务有任务的发出人、任务的执行人、任务的开始时间、完成时间、任务的内容等属性,也可以有一个任务的建立和完成的方法。这样当调用建立方法时给执行人发一封信,当调用完成方法时,给发出人发一封信。同时要有任务的web编辑界面,发出任务和修改任务的权限定义。当建立了这样一个zclass,就可以在任何文件夹中加入一个任务实例,Zope先检查用户是否有新建任务的权限,然后调出任务的编辑界面填入任务的各种属性,也有“建立”和“完成”按钮来调用方法。通过zclass可以方便地为Zope增加新功能。这种product的概念是PHP等语言所没有的功能,而通过product,Zope可以思路清晰地完成一项复杂地功能。

同时,在product的实现中,不但可以调用Zope API,还可以直接调用Zope本身的各种模块来实现更复杂的功能。因为Zope是开放源代码的,又是Python实现的,当编程中遇到难题时,可以随时参考Zope的源代码,方便的调用Zope模块和函数,甚至可以修改Zope代码,这些也是其他编程环境所没有的。

Zope的用户管理、版本管理等功能也是通过product来实现的,因此,Zope有一个标准的、开放的开发环境。

最近刚读了一篇文章,它用dos和windows的关系来类比Apache和Zope,在Apache中所有的东西都要自己来搞,如果不是自己搞,也要集合很多不同的程序来完成自己的任务,并且每个人的选择是不同的,这样,造成了相互之间没有共同语言,就像要编dos程序,要先自己到各处抓一些图形程序、打印程序、声音程序、安装程序等,来集合在一起,这样很容易出毛病。而在Zope中,有很多统一的API,当你完成一个product时,用户管理、权限管理、管理界面、编辑界面等这些都是Zope自带的,有API可用,就不用自己乱忙了。比如象zwiki,几乎不用它,Zope本身就是一个协同工作的产品自带用户管理和版本管理,这些就不用浪费时间白手起家了。文章中有一句话很好:“最差的统一编程界面也比没有统一好”。到cmf,Zope更提供了极为丰富的API。

最后,如果对Zope还有什么不满意,还可以使用cmf(内容管理框架,Zope的二级开发平台)来建立、管理网站,开发新功能。cmf对Zope的用户管理、文档管理、product进行了大量的扩展来实现更加高端的功能。关于cmf的功能,需要另外写一篇文章来叙述。

上一页  1 2 

Tags:Zope 优点 Apache

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接