HomeZope Page 4 - Getting started with Zope for Linux and Solaris
Extending Zope - Zope
Due to the increased complexity of Web applications, programmers have hit the limit of what can be done with CGI. Zope provides the basic services provided by CGI, such as allowing users to log on to e-commerce web sites and community portals in order to receive personalized content, all while making software development easier. In this article, I will cover what Zope is, how you install it on a Linux or UNIX system, and explain a few of the concepts you'll need to understand in order to be able to be productive with it.
As I mentioned before, Zope object oriented. As such, one of its biggest strengths is its ability to reuse code. Zope has the ability, through its components, to extend its functionality. ZClasses, TML, Z SQL Methods, Python products, and Python scripts are all different ways of working with Zope.
ZClasses allow the developer to define new objects. These can be based on common Zope objects, like a folder or DTML document, but can be extended any way. ZClasses can be created and managed with nothing more than Zope's Web interface. In other words, no Python is required.
Z SQL Methods allow database developers to program directly via Zope's Web interface. The methods become available when he has compiled the Database Adapter (DA) for the database Zope is supposed to open a connection. Z SQL methods also make it easy for developers to switch from a development database to a production database by simply changing the connection object so that it connects Zope with the actual working database.
DTML, or Document Template Markup language, is Zope's built in scripting language. Like PHP, DTML tags are embedded in a web page and, when the page is called via a web browser, the tags are executed. DTML is not designed to be a primary language in the development of Zope applications, but rather it is meant to be more of a glue, which connects dynamic data., regardless of where it's held. In addition, DTML can serve as a template defining the visual appearance of the web site and how the dynamic data should be represented.
Zope Products are applications specifically written for Zope.
Python Modules: Because Zope is mostly written in Python and, therefore, is object oriented, it is very easy to use existing Python modules to augment or enhance your web applications. If you're using Zope for a project, then make sure to check out Python.org on a regular basis. There's a good chance that your project requirements have already been met by a Python library. Also, make sure to check out The Python Image Library (PIL) and The ReportLap Library, which is capable of creating dynamic Adobe Acrobat PDF files.
As I'm sure you can tell, Zope is an extremely powerful tool. I hope that this introduction has given you a good starting point into understanding Zope. Although there is much to learn, having a clear understanding of how Zope works will help you make this one of your favorite tools.