Zope 3 Training for Plone Developers: Syllabus
Course Objectives
Plone developers are already productive and innovative. But the new Zope 3 component architecture, which is part of Plone 2.5 and above, makes it even easier and faster to build powerful add-on Products that are both manageable and reusable.
Zope 3 enables you to develop products as collections of components. The Zope 3 Training for Plone Developers course provides students with the knowledge required to create these components. This course is intended for students with little or no Zope 3 knowledge but at least some experience developing add-on Products for Plone using the Archetypes framework.
Prerequisites
To succeed fully in this course, students should already
- have a good understanding of the Python programming language
- have a good understanding of the Plone CMS from a user perspective (ie how to access a Plone site, add content items, etc).
- know how to install and run Zope 2 and Plone on your OS of choice.
- understand the difference between TTW development and filesystem development for Zope 2.
- understand the basics of creating a filesystem product that can be deployed into a Zope 2 instance (ie content types, skins, etc).
Goals
Upon completion of this course, you should be able to
- understand relationship between Zope 2 and Zope 3.
- understand what the basic Zope 3 concepts (interfaces, adapters, utilities, browser views) are and how to use them.
- understand Zope 3 schema's (zope.schema) and how they relate to Archetypes schema's
- understand the basics of using zope.formlib.
- understand Zope 3 annotations (zope.app.annotations).
- understand how to write functional tests using zope.testbrowser.
- create a filesystem add-on product for Plone which uses zope.formlib and zope.schema to describe content types.

