Фреймворк Zope

Данная статья посвящена такому фреймворку, как Zope. Zope – достаточно популярный Web-фреймворк, который написан на языке программирования Python, при этом, в основном он применяется в качестве системы управления содержимым сайта, то есть - контентом.

Краткая история о том, как зарождался Zope

В 1998 году сотруднику компании Digital Creations - Джиму Фултону было предложено прочитать лекцию о стандартных интерфейсах, которые используются для связи внешней программы с веб-сервером (CGI). Согласно легенде, он ничего об этом не знал, и его начальнику, пока они летели в самолете, пришлось рассказать ему основы CGI. С этой лекцией, Джим выступил на конференции. Говорят, что протокол ужаснул его своей чрезмерной простотой, и на основе этого, Фултон решил создать что-нибудь объектно-ориентированное. Было создано три открытых Python пакета: Bobo, Document Template, и Bobopos. Эти пакеты — веб публикатор, движок шаблонов, и объектная база данных стали ядром Principia, то есть коммерческого сервера приложений. А в ноябре 1998 года, инвестор Хадар Педхазур убедил Digital Creations сделать Principia открытым, после чего, эти пакеты развились в компоненты ядра фреймворка Zope 2, а компания получила новое имя — Zope Corporation и начала выпускать свой продукт под собственной Open Source лицензией ZPL. Так началась история Zope.

Почему стоит выбрать этот фреймворк?

Основной особенностью Zope является его объектно-ориентированность:
• Он представляет собой коллекцию компонентов - объектов, с четко заданной функциональностью, которая описывается с помощью интерфейсов;
• Каждый компонент можно заменить на любой другой с таким же интерфейсом (можно провести аналогию с моделью провайдеров в ASP.NET). Таким образом, компоненты выполняют один и тот же функционал, но разными способами. А программист выбирает из них наиболее подходящий;
• Имеет объектную базу данных ZODB, предназначенную для естественного хранения объектов;
• Строгие стандарты для разработки, выпуска и обслуживания программного обеспечения;
• Мощный механизм HTML/XML-шаблонов и широкие возможности для тестирования.

Сравнение Zope с другими фреймворками

Для того, чтобы сделать выводы о популярности этого фреймворка, было принято решение создать сравнительную таблицу, расположенную ниже. Zope был сравнен с такими фреймворками как – Jango и CherryPy по следующим критериям:
• Группа фреймворков: Full stack или Micro-framework.
• Звёзды Github: общее количество звезд проекта, выставленных пользователям.
• Релизы Github: количество релизов каждого проекта, что отражает активность работы над проектом и его зрелость.
• Fork-и Github: количество, сделанных копий каждого проекта, что показывает популярность использования проекта в собственных работах.
• Вопросы Stack-overflow: количество вопросов, заданных по определенной теме.
• Вакансии: количество вакансий, связанных с технологиями или ИТ компетенциями.
Сама сравнительная таблица:

Название фреймворка Группа фреймворка Звёзды на Github Релизы на Github Fork-и на Github Вопросы Stack-overflow Вакансии
Zope Full 196 229 81 3 0
Django Full 46 528 275 20 400 217 030 42
CherryPy Micro 1 130 127 279 1 300 0

Вывод

Исходя из проделанной работы можно сделать вывод о том, что данный фреймворк имеет достаточное небольшое сообщество и многие разработчики, работающие на Python, даже не слышали о нем, поэтому в случае чего, вам будет трудно найти человека, к которому можно будет обратиться за советом. Помимо этого, будет достаточно трудно найти обширную документацию и учебники по Zope, поэтому придется много копаться. Но все же, если вам нужна обширная высоко структурированная среда для создания больших приложений, то фреймворк Zope вам более чем подходит.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *