Zope. Описание

Автор: Дмитрий Васильев

Zope расшифровывается как Z Object Publishing Environment (дословно: Среда публикации объектов Z) и является каркасом для создания приложений и сервером приложений, таким образом Zope может, например, управлять несколькими созданными с его помощью сайтами. Сервер написан на языке Python и может достаточно легко расширяться за счет написания пакетов на этом языке. По умолчанию все объекты в Zope сохраняются в объектной базе ZODB, но также есть адаптеры практически для всех основных SQL баз.

Изначальная идея объектно-ориентированной среды публикации была предложена Джимом Фултоном (Jim Fulton), на тот момент он был техническим директором компании Digital Creations которая разработала три пакета: Bobo (объектная база), Document Template (шаблоны публикации) и BoboPOS (система публикации). Позднее пакеты были объединены в один продукт названный Principia, который в ноябре 1998 года при участии венчурного капитала был выпущен как проект с открытым исходным кодом под именем Zope, этот продукт известен как Zope 2. Компания также была переименована в Zope.

Разработчики Zope достаточно сильно влияют на развитие языка Python и также автор языка Гуидо Ван Россум (Guido Van Rossum) какое-то время работал в компании.

Хотя сервер Zope 2 получил достаточно широкое распространение и для него было написано большое количество модулей расширения, но основной проблемой было чрезмерное использование наследования при написании модулей расширения и в итоге классы в модулях имели слишком много зависимостей и со временем их становилось все тяжелее поддерживать. Что бы исправить эти проблемы была предложена идея использования компонентной архитектуры которая была заложена в основе полной переработки сервера и выпущенной как Zope 3 в ноябре 2004 года.

Я присоединился к проекту Zope 3 в начале 2004 года заинтересовавшись реализацией компонентной архитектуры и занимаюсь русским переводом, проблемами интернационализации, рефакторингом, исправлением ошибок и также реализовал такие идеи как менеджеры паролей и языковое пространство имен.

По материалам http://hlabs.spb.ru
Публикуется с разрешения автора:
Dmitry Vasiliev
http://hlabs.spb.ru
dima at hlabs.spb.ru