分类：电脑/网络-程序设计
问题：zope是什么?谁能告诉我具体的定义?以及在哪里学习zope?听? 
zo是什么?谁能告诉我具体的定义?以及在哪里学习zope?听说是一个非常好的系统...
回答：Zope是一种让具备不同技能的开发人员一起构建Web应用程序的框架。本章详细介绍了Zope，以及和其它类似的不同之处。 1. 什么是Web应用程序？　　网站内容需要及时的更新，尤其对于商业网站来说更是如此。网站中的网页用超级文本标记语言(HTML)编写而成。当用户访问网站的时候，实际上就是把服务器上带有HTML 的文本内容传送到用户的浏览器中，然后通过浏览器来解释成图文并茂的网页。当用鼠标点击链接时，就是开始传送一个新的网页。 　　一些网站是静态的。静态网站需要维护人员手工更新网站内容。更新内容就是手工更新那些用HTML编写而成的网页文件，然后把这些文件放到服务器中。更新由静态网页组成的网站，需要编辑所有的文件，如果要更新的文件很多，更新就会很繁琐。这样就很容易犯错误。为了提高网站内容维护的效率，就可以通过构建Web应用程序来解决问题。 　　Web应用程序就是一种通过互联网能够让Web浏览器和服务器通讯的计算机程序。不同于静态网站的，Web应用程序动态创建页面。采用动态方式生成的Web站点通过使用计算机程序来实现动态的特性。这种动态的应用程序可以用各种计算机语言来编写。 　　动态构建的网站不需要维护管理人员一页一页的更新内容。动态网站可以把HTML 部分和数据部分分离开，从而极大的提高网站维护和管理的效率。使用Web应用程序的网站很多很多，比如：Google，SourceForge，eBay，Hotmail等等。 　　通常，允许人们构建Web应用程序的框架被称作Web应用服务器。Zope就是一种web 应用服务器，类似的竞争者比如： WebLogic?, Macromedia ColdFusion? (  2. 如何通过应用服务器受益？　　如果你想编写web应用程序，一般都需要使用应用服务器框架，除非是非常特殊的应用程序。通过使用应用服务器框架可以充分利用已经编写好的各种服务程序，而不需要像直接使用一种编程语言那样从头写起。许多应用服务器可以完成以下任务。 显示动态内容 你可以加入搜索特性。应用服务器可以提供动态生成内容的服务。应用服务器一般都可以个性化，并且结合数据库，以及搜索内容。 管理你的Web站点 应用服务器可以通过统一的方式管理站点中的数据、事务逻辑和显示。 构建一个内容管理系统 应用服务器提供构建内容管理系统的工具，从而可以让非技术编辑者可以创建和管理站点内容。 构建电子商务应用程序 应用服务器提供构建复杂的电子商务所需的框架。 安全的管理各种用户 网站中的不同用户需要不同的权限，应用服务器可以提供权限控制功能。 提供多种网络服务 支持网络服务的web站点可以处理来自其它计算机程序的请求。应用服务器正在逐步提供这样的功能。 结合多种系统 现有的内容可能来自于不同的地方，比如：关系数据库，文件，其它的站点等等。应用服务器可以把这些不同的数据整合在一起，提供统一的界面。 提供可扩展性 应用服务器可以根据服务器负载的情况来进行扩展。 　　Zope应用服务器可以完成上述所有功能。 3. Zope 历史　　1996年，当时是Zope公司CTO和 Python领袖的Jim Fulton，为教授CGI程序起草讲稿，尽管他的CGI编程的知识不算很多。Jim针对这门课程，以他自己的方式研究了所有关于CGI方面的现存文档。在讲课返回的途中，Jim考虑传统的基于CGI的编程环境中他不喜欢的方面包括：脆弱、缺乏面向对象和暴露Web服务器细节的方式。从这些最初的沉思 开始，在返回的飞机中Jim写出了Zope的核心内容。 　　Zope公司（原名为Digital Creations）后来公布了三个用以支持Web出版的开放源码软件包，分别为： Bobo、Document Template 和BoboPOS 。 这些软件包是用 Python编写的。它们发展成为Zope提供Web ORB (Object Request Broker)、DTML 脚本语言和对象数据库的核心组件。从那时起，Zope公司就开发了一套基于他们的三个开放源码组件的商业性的应 用服务器。这个产品称为Principia 。在1998年的11月，投资人Hadar Pedhazur 决定让Zope公司公开Principia的源码。于是就形成了Zope， 　　“Zope”含义是指 Z 对象出版环境（Z Object Publishing Environment，Z没有特别的含义）。Zope主要采用Python编写，其中与性能密切相关的部分采用C语言编写。 4. 为什么使用Zope？　　比起其它web应用服务器，Zope可以更好更快的创建web应用程序，这是因为Zope支持以下特性： Zope是免费的，可以在开放源代码许可证条件下自由分发，不同于那些昂贵的商业应用服务器。 Zope是一套完整的平台。它包含了开发应用程序所需的全部组件。不需要为了使用Zope而授权使用其它软件。并且Zope安装容易，轻松上手。 Zope允许并鼓励第三方开发者打包和分发应用程序。因此，Zope已经有了很多可以立即使用的产品组件。大多数组件都是自由并开放源代码的。Zope拥有一大批社区开发者。 Zope创建的应用程序可以直接通过Zope企业对象（ZEO）进行扩展。通过ZEO,可以在多台计算机中部署Zope应用程序，而不需要修改代码。 Zope 允许开发者只使用浏览器就可以创建web应用程序。比如：Internet Explorer, Mozilla, Netscape, OmniWeb?, Konqueror, 以及Opera浏览器都可以支持Zope的管理界面(ZMI).Zope还可以通过使用统一的web界面让其他的开发者安全的同时进行开发。其它应用服务器很少支持这个特性。 Zope提供多种和可扩展的安全框架。可以轻松结合多种权限认证系统，比如通过内置的模块可以同时支持LDAP, Windows NT, and RADIUS。而许多其它应用服务器缺乏这些特性 Zope可以让开发团队高效协同开发。协同环境可以让用户不会相互干扰，Zope使用Undo, Versions, History，以及其它工具来帮助人们一起工作，并且可以从错误中恢复过来。而其它大多数应用服务器不支持这些特性。 Zope 可以运行在大多数计算机操作系统平台中：Linux, Windows NT/2000/XP, Solaris, FreeBSD?, NetBSD?, OpenBSD?, 和 Mac OS X.。Zope甚至可以运行在Windows 98/ME中。而其它大多数应用服务器做不到这一点。 Zope可以通过Python语言进行扩展。Python很流行并且很容易学，可以促进快速开发。Python中的许多功能库可以直接用于创建你的应用程序。而其它一些应用服务器使用不能快速开发的编译语言，比如Java,或者使用不流行的语言。 　　用Zope创建的应用，请参考Zope公司的主页 中的案例分析页面。 5. Zope的目标用户，以及Zope不适合做什么　　管理大型站点的开发过程是件困难的事情。经常需要很多人一起工作来创建、部署和管理web应用程序。 信息架构者进行总的安排和控制 组件开发者创建可重用和分发的软件。 站点开发者结合现有的由组件开发者编写的软件，以及本地应用服务器提供的服务，构建应用程序。 站点设计者创建站点的外观和感觉 内容管理者创建和管理站点的内容 管理员维护软件系统运行 消费者使用站点来定位和使用有用的内容。 　　Zope最适合组件开发者、站点管理者和站点设计者，并且这三种用户通过Zope提供的服务和第三方产品可以一起协同开发应用。典型的情况是内容管理者和使用者在系统架构者的指导下开发应用。管理员部署和维护应用程序。 　　Zope是一种web应用构建的框架，不同水平的程序员都可以使用Zope来创建基于web 的应用程序。Zope不是一种现成的应用程序。它不是weblog、内容管理系统或是一种电子购物程序。 　　基于Zope的各种产品可以完成这样的功能。到目前为止， 站点中已经有了500多种可用于你的应用程序的产品。这些产品包括Weblog，内容管理，以及电子商务程序等等。 　　Zope不是一种可可视化的设计工具，不同于Macromedia Dreamweaver 或者 Adobe GoLive?这样的软件。你可以使用这些软件来管理基于Zope的web站点，但是不能用 Zope来替代这些界面设计软件。 6. Zope的使用条款，许可证，以及Zope社区　　Zope是免费的。你可以用zope创建和运行web应用程序，而不用支付费用，并且还可以在你的产品中置入zope而不用给Zope公司支付使用费。分发Zope需要遵守的许可证是一种开放源码许可证，即Zope Public License或ZPL。ZPL条款中规定你可以获得和修改Zope的源代码。 　　ZPL不同于GNU Public License（另外一种比较流行的开放源代码许可证）。如果你试图重新分发遵守GPL许可证的应用程序，并且你修改或扩展了应用程序，GPL 要求所做的贡献属于许可证颁发者。而对于遵守ZPL的应用程序就没有这样的要求。 ZPL已经得到开放源代码机构的认可，获得了OSD认证,另外还得到自由软件基金会的认可，兼容于GPL许可证。 　　Zope开发者社区负责维护或扩展Zope应用服务器。社区中的很多成员是专业咨询顾问、专业开发者和Web精通者，他们使用Zope开发应用程序。另外，用户中还有学生以及站点开发爱好者。Zope公司也是社区成员之一，主要负责维护Zope以及开发Zope代码。 Zope社区通过聚会以及邮件列表和站点进行交流。在 的邮件列表页面，可以找到更多的信息。 　　Zope公司通过多种方式获得收入，包括为商业用户创建web应用程序，培训Zope开发者，为使用Zope的公司提供技术支持，以及主机服务。Zope公司不从Zope服务器的销售中获得收益。