Logo     Photos

7 Member(s) Online

PyCon is a 100%
Volunteer-run
Conference Organized by
Members of the
Python
Community.

Site/Questions etc ?

Valid XHTML 1.0 Transitional

Valid CSS!

PyCon 2007 is sponsored
in part by
Zenoss - The Next Step in IT Management Google Microsoft .Net Framework EWT LLC Enthought, Inc. ITA Software
Platinum
Wingware Python IDE Accense Technology, Inc.
Gold
Quality Vision International Inc. MerchantCircle Big Nerd Ranch, Inc. High Speed Rails Canonical ZeOmega -- Open Minds' Open Solutions Open Source Applications Foundation CCP Games Tummy.com - we do linux AG Interactive ActiveState - Dynamic Tools for Dynamic Languages
Silver
Python411 Podcast Series O'Reilly Media, Inc.
Media

Class Outline: Zope Component Architecture and zc.buildout

   The Zope Component Architecture

     - Introduction - Why and why not to care about components:

       This part of the presentation will give a theoretical
       background to help people understand when and when not to use a
       component architecture.

       - Composition versus inheritance

       - Framework interoperability

       - Plug-in frameworks

       - Scale: doing the simplest things that can possibly work, 
         but knowing when to use more powerful technologies.

     - Zope Component Architecture

       In this part, I'll present the main features of the component
       architecture.  For each, I'll discuss the motivation, describe
       the relevant APIs from the component architecture, and provide
       examples.  I'll show how the ideas are applied in an ad-hoc
       fashion by Python standard library modules. I'll also describe
       some alternatives from other frameworks.

       - Interfaces

       - Utilities -- a simple plug-in registry

       - Adapters -- gluing different frameworks together

       - Events & Subscribers -- adding rules and extending behavior

     - Advanced topic: registration management issues

     - Summary

       In the summary we'll look back over the component architecture
       from the point of view of scale.  In light of the desire to do
       the simplest thing that can possibly work, we'll discuss when
       should you use either the technology or ideas from the
       component architecture.

   Break

   Introduction to zc.buildout

     - Why zc.buildout?

       - System assembly

         - why not make or scons?

       - Python application assembly with eggs

         - Support for developers

         - Assembling applications versus installing packages

         - Why not easy_install?

     - A Python Egg Primer

       Here I'll provide an introduction to using eggs from the point
       of view of a the lazy programmer.  I'll omit setuptools arcana
       and focus on the core concepts that make eggs so useful.

       - Eggs  

         They can sound complicated, but they are actually pretty
         simple.

       - easy_install and setuptools

       - Some egg-related jargon

         - distributions

         - source and binary distributions

         - eggs and develop eggs

         - requirements

         - index- and link-servers

       - entry points and script generation

     - Quick buildout introduction

       - A buildout.cfg file

       - Parts

       - Recipes

       - Special recipes for supporting Python application development

     - Buildout examples

       - Using buildout to try out new packages

       - Using buildout to create a development environment

       - Installing egg-based scripts for personal use

       - System assembly

     - A lazy programmer's introduction to creating eggs

       - Develop eggs, a minimal starting point

       - Adding data needed for distribution

       - Creating distribution files

     - Extending buildout with new recipes

       - The recipe API

       - A sample recipe

       - Part dependencies

     - Advanced topics

       - Sharing an egg repository across projects

       - Offline mode

       - Multiple deployment environments (dev/stage/prod) and
         multiple machines.

       - Using buildout with system-packaging tools (e.g. RPM).
Content Last Modified: December 01, 2006, at 08:40 AM