Skip to content.

plope

Personal tools
You are here: Home » Books » 2_7Edition » Preface
 
 
Views
  • State: visible
Previous Page Up one Level Next Page Preface Comments On/Off Table of Contents Sections Index

Preface

Welcome to The Zope Book. This book is designed to introduce you to Zope, an open-source web application server.

To make effective use of the book, you should know how to use a web browser and have a basic understanding of the Hyper Text Markup Language (HTML) and Uniform Resource Locators (URLs). You don't need to be a highly-skilled programmer in order to use Zope, but you may find the understanding of some programming concepts (particularly in object-oriented programming) to be extremely helpful.

How the Book Is Organized

A brief summary of each chapter is presented below:

  1. Introducing Zope

    This chapter explains what Zope is and what it can do for you. You'll also learn about the differences between Zope and other web application servers.

  2. Zope Concepts and Architecture

    This chapter explains fundamental Zope concepts and describes the basics about Zope's architecture.

  3. Installing and Starting Zope

    This chapter explains how to install and start Zope for the first time. By the end of this chapter, you will have Zope installed and working.

  4. Object Orientation

    This chapter explains the concept of object orientation, which is the development methodology most often used to create Zope applications.

  5. Using the Zope Management Interface

    This chapter explains how to use Zope's web-based management interface. By the end of this chapter, you will be able to navigate around the Zope object space, copy and move objects, and use other basic Zope features.

  6. Using Basic Zope Objects

    This chapter introduces objects, which are the most important elements of Zope. You'll learn the basic Zope objects: content objects, presentation objects, and logic objects, and you'll build a simple application using these objects.

  7. Acquisition

    This chapter introduces acquisition, which is Zope's mechanism for sharing site behavior and content.

  8. Basic DTML

    This chapter introduces DTML, Zope's tag-based scripting language. You'll learn DTML syntax, its basic tags, and how to use DTML templates and scripting facilities. After reading this chapter, you'll be able to create dynamic web pages.

  9. Using Zope Page Templates

    This chapter introduces Zope Page Templates, another Zope tool used to create dynamic web pages. You will learn about basic template statements that let you insert dynamic content, and how to create and edit page templates.

  10. Creating Basic Zope Applications

    This chapter presents several real-world examples of building a Zope application. You'll learn how to use basic Zope objects and how they can work together to form basic applications.

  11. Users and Security

    This chapter looks at how Zope handles users, authentication, authorization, and other security-related matters.

  12. Advanced DTML

    This chapter takes a closer look at DTML. You'll learn about DTML security, the tricky issue of how variables are looked up in DTML, advanced use of basic tags, and the myriad of special purpose tags.

  13. Advanced Page Templates

    This chapter goes into more depth with Zope Page Templates. You will learn all about template statements, expression types, and macros, which let you reuse presentation elements.

  14. Advanced Zope Scripting

    This chapter covers scripting Zope with Python and Perl. You will learn how to write business logic in Zope using tools more powerful than DTML, about the idea of scripts in Zope, and about Python and Perl-based scripts. This chapter shows you how to add industrial-strength scripting to your site.

  15. Zope Services

    This chapter covers Zope objects that are considered "services," which don't readily fit into any of the basic "content," "presentation," or "logic" object groups.

  16. Searching and Categorizing Content

    This chapter shows you how to index and search objects with Zope's built-in search engine: the Catalog. You'll learn about indexing concepts, different patterns for indexing and searching, metadata, and search results.

  17. Relational Database Connectivity

    This chapter describes how Zope connects to external relational databases. You'll learn about features that allow you to treat relational data as though it were Zope objects, and security and performance considerations.

  18. Virtual Hosting Services

    This chapter explains how to set up Zope in a "virtual hosting" environment, in which Zope sub-folders can be served as "top-level" host names. It includes examples that allow virtual hosting to be performed either "natively" or using Apache's mod_rewrite facility.

  19. Sessions

    This chapter describes Zope's "sessioning" services, which allow Zope developers to "keep state" between HTTP requests.

  20. Scalability and ZEO

    This chapter covers issues and solutions for building and maintaining large web applications, and focuses on issues of management and scalability. In particular, the Zope Enterprise Option (ZEO) is covered in detail. You'll learn about the tools and techniques needed to turn a small site into a large-scale site, servicing many simultaneous visitors.

  21. Managing Zope Objects Using External Tools

    This chapter explains how to use tools outside of your web browser to manipulate Zope objects.

  22. Extending Zope

    This chapter covers extending Zope by creating your own classes of objects. You'll learn about ZClasses, how instances are built from classes, and how to build a ZClass and its attendant security and design issues. You'll also learn how to create Python base classes for ZClasses, and about the base classes that ship with Zope.

  23. Maintaining Zope

    This chapter covers Zope maintenance and administration tasks, such as database "packing" and Product installation.

  24. Appendix A: DTML Reference

    Reference of DTML syntax and commands.

  25. Appendix B: API Reference

    Reference of Zope object APIs.

  26. Appendix C: Page Template Reference

    Reference of Zope Page Template syntax and commands.

  27. Appendix D: Zope Resources

    Reference of "resources" which can be used to further enhance your Zope learning experience.

  28. Appendix E: DTML Name Lookup Rules

    Describes DTML's name lookup rules.

Conventions Used in This Book

This book uses the following typographical conventions:

Italic
Italics indicate variables and names and is also used to introduce new terms.
Fixed width
Fixed width text indicates objects, commands, hyperlinks, and code listings.

Contributors to This Book

Contributors to this book include Amos Latteier, Michel Pelletier, Chris McDonough, Evan Simpson, Tom Deprez, Paul Everitt, Bakhtiar A. Hamid, Geir Baekholt, Thomas Reulbach, Paul Winkler, Peter Sabaini, Andrew Veitch, Kevin Carlson, Joel Burton and the Zope Community.

Amos and Michel wrote the entirety of the first edition of this book, and kept the online version of the book current up until Zope 2.5.1.

Tom Deprez provided much-needed editing assistance on the first book edition.

Evan Simpson edited the chapters related to ZPT for the 2.6 edition.

Paul Everitt contributed to the first few chapters of the first edition, edited the first few chapters of the second edition for sanity and contributed some "Maintaining Zope" content for the 2.6 edition.

Bakhtiar Hamid edited the ZEO chapter for the 2.6 edition.

Geir edited and extended the Users and Security chapter for the 2.6 edition.

Paul Winkler with help from Peter Sabaini expertly massaged the Advanced Scripting chapter into coherency for the 2.6 edition.

Peter Sabaini greatly fleshed out and extended the "Maintaining Zope" and the "Searching and Categorizing Content" chapter for the 2.6 Edition.

Andrew Veitch cheerfully performed the thankless task of editing and extending the Relational Database Connectivity chapter for the 2.6 edition.

Kevin Carlson masterfully edited and expanded the Advanced DTML chapter.

Joel Burton rewrote the ZCatalog chapter late in the 2.6 book's lifetime.

Dario Lopez-Kästen updated the "Introducing Zope" chapter for the 2.7 edition.

Chris McDonough edited the entirety of the book for the 2.6 edition, entirely rewrote a few chapters and added new material related to object orientation, using the Zope management interface, acquisition, installation, services, virtual hosting, sessions, and DTML name lookup rules.

Anyone who added a comment to the online BackTalk edition of the first online edition of this book contributed greatly. Thank you!

Previous Page Up one Level Next Page Preface Comments On/Off Table of Contents