Тип сайта | Python веб-фреймворк разработка |
---|---|
Доступно на | английском языке |
Создано | Zope Corporation |
Editor | Zope Corporation |
URL | zope.readthedocs.io |
Коммерческий | No |
Регистрация | нет |
Запущен | июль 1999 (1999-07) |
Текущий статус | Активный |
Лицензия на содержимое | Общественная лицензия Zope |
Zope - это семейство бесплатных серверов с открытым исходным кодом веб серверов приложений, написанных на Python и связанное с ними онлайн-сообщество. Zope расшифровывается как «Z Object Publishing Environment» и была первой системой, использующей теперь распространенную методологию публикации объекта для Интернета. Zope был назван Python приложением-убийцей, приложением, которое помогло привлечь внимание к Python.
За последние несколько лет сообщество Zope создало несколько дополнительных веб-фреймворков с разными целями и принципами, но разделяя философию, людей и исходный код. Zope 2 по-прежнему является наиболее распространенным из этих фреймворков, во многом благодаря системе управления контентом Plone , которая работает на Zope 2. BlueBream (ранее называвшийся Zope 3) менее распространен, но лежит в основе несколько крупных сайтов, в том числе Launchpad. Grok начинался как более удобный для программистов фреймворк, «Zope 3 для пещерных людей», а в 2009 году Pyramid приобрел популярность в сообществе Zope как минималистичный фреймворк, основанный на принципах Zope.
Была создана Zope Corporation в 1995 г. в Фредериксбурге, Вирджиния под названием Digital Creations, в качестве совместного предприятия с InfiNet (совместное предприятие сети газет). Компания разработала систему тематической рекламы для Интернета. В 1997 году компания стала частной и независимой. Инженеров-программистов компании возглавляет технический директор Джим Фултон. PythonLabs, создатели Python, стали частью компании в 2000 году (основатель Python Гвидо ван Россум покинул Zope Corp в 2003 году).
То, что сейчас известно как Zope 2, началось с слияния три отдельных программных продукта - Bobo, Document Template и BoboPOS - в сервер приложений Principia. По просьбе своего крупнейшего инвестора, Opticality Ventures, Principia была переиздана как бесплатное программное обеспечение под названием Zope в 1998 году. Bobo, а следовательно, и Zope, были первым решением для публикации объектов в Интернете.
В ноябре 2004 года была выпущена Zope 3. Zope 3 - это полная перезапись, которая сохраняет только исходную базу данных объектов ZODB. Он непосредственно предназначен для разработки корпоративных веб-приложений с использованием новейших парадигм разработки. Zope 3, однако, несовместим с Zope 2, поэтому вы не можете запускать приложения Zope 2 на Zope 3. Первоначально он был предназначен для внедрения уровня обратной совместимости, чтобы программное обеспечение Zope 2 могло работать на Zope 3. Вместо этого модуль, известный как Five представила новую парадигму Zope 3 в Zope 2, хотя полная совместимость и в этом случае невозможна.
Существование двух несовместимых веб-фреймворков под названием Zope вызвало большую путаницу. В ответ в январе 2010 года Zope 3 был переименован в BlueBream. «Зоп» и «голубой лещ» - названия разновидностей рыб, Ballerus ballerus.
Основана | март 2006 г.; 14 лет назад (2006-03) |
---|---|
Тип | некоммерческая |
Focus | Программное обеспечение с открытым исходным кодом |
Метод | Общественная лицензия Zope |
Веб-сайт | Foundation.zope.org |
Zope Foundation - это организация, которая способствует развитию платформы Zope, поддерживая сообщество, которое разрабатывает и поддерживает соответствующие программные компоненты. Сообщество включает в себя разработчиков программного обеспечения с открытым исходным кодом, документации и веб-инфраструктуры, а также потребителей программной платформы из бизнеса и организаций. Он управляет веб-сайтами zope.org, инфраструктурой для совместной работы с открытым исходным кодом.
Снимок экрана Интерфейс управления Zope в окне веб-браузера. | |
Разработчик (и) | Zope Corporation |
---|---|
Первоначальный выпуск | 1998; 22 года назад (1998) |
Стабильный выпуск | 2.13.30 / 2020-02-14 |
Написано на | Python |
Операционная система | Кросс-платформенная |
Тип | Веб-сайт сервер приложений |
Лицензия | Общественная лицензия Zope |
Веб-сайт | www.zope.org |
Веб-сайт Zope обычно состоит из объекты в базе данных объектов Zope, а не файлы в файловой системе , как это обычно бывает с большинством веб-серверов. Это позволяет пользователям использовать преимущества объектных технологий, таких как инкапсуляция. Zope отображает URL-адреса на объекты, используя иерархию включения таких объектов; методы также считаются содержащимися в своих объектах. Данные также могут храниться в других базах данных или в файловой системе, но ZODB является наиболее распространенным решением.
Zope предоставляет два механизма для создания шаблонов HTML : язык разметки шаблонов документов (DTML) и шаблоны страниц Zope (ZPT). DTML - это язык на основе тегов, который позволяет реализовать простые сценарии в шаблонах. DTML имеет условия для включения переменных, условий и циклов. Однако DTML может быть проблематичным: теги DTML, перемежающиеся с HTML, образуют недействительные HTML-документы, и его использование требует осторожности при включении логики в шаблоны, чтобы сохранить читаемость кода. Многие ведущие разработчики Zope не одобряют использование DTML. ZPT - это технология, устраняющая недостатки DTML. Шаблоны ZPT могут быть либо правильно сформированными документами XML, либо документами HTML, в которых вся специальная разметка представлена как атрибуты в пространстве имен TAL (Template Attribute Language ). ZPT предлагает очень ограниченный набор инструментов для условного включения и повторения XML-элементов. Следовательно, шаблоны обычно довольно простые, а большая часть логики реализована в коде Python. Одним из значительных преимуществ шаблонов ZPT является то, что их можно редактировать в большинстве графических редакторов HTML. ZPT также предлагает прямую поддержку интернационализации.
Zope 2 лежит в основе системы управления контентом Plone , а также ERP5 с открытым исходным кодом система планирования ресурсов предприятия.
Разработчик (и) | Zope Corporation |
---|---|
Первоначальный выпуск | 2004; 16 лет назад (2004 г.) |
Стабильный выпуск | 1.0 / 18 января 2011 г.; 9 лет назад (18.01.2011) |
Написано на | Python |
Операционная система | Кросс-платформенная |
Тип | Веб сервер приложений |
Лицензия | Общественная лицензия Zope |
Веб-сайт | bluebream.zope.org |
BlueBream - это переработанный разработчиками Zope сервер приложений Zope 2 web . Он был создан под названием "Zope 3", но существование двух несовместимых фреймворков с одинаковым именем вызвало большую путаницу, и Zope 3 был переименован в "BlueBream" в январе 2010 года. BlueBream распространяется на условиях Zope Общественная лицензия и, следовательно, бесплатное программное обеспечение.
Zope 2 зарекомендовал себя как полезный фреймворк для разработки веб-приложений, но его использование выявило некоторые недостатки. Чтобы назвать несколько, создание продуктов Zope 2 включает в себя копирование большого количества шаблонного кода - «магического» кода - который просто должен быть там, а встроенный интерфейс управления трудно изменить или заменить. Zope 3 был переписанным программным обеспечением, которое пытается устранить эти недостатки, сохраняя при этом преимущества Zope, которые привели к его популярности. BlueBream основан на компонентной архитектуре, которая позволяет легко смешивать программные компоненты различного происхождения, написанные на Python. Первоначально задумывавшаяся как замена Zope 2, архитектура компонентов Zope была перенесена в Zope 2, начиная с Zope 2.8. Многие платформы Zope, такие как Plone, проходят тот же тип поэтапного переписывания. Первая производственная версия нового программного обеспечения, Zope X3 3.0.0, была выпущена 6 ноября 2004 года.
Проект Zope 3 начался в феврале 2001 года как попытка разработать новая версия Zope как почти полностью переработанная, с целью сохранить успешные особенности Zope 2, пытаясь исправить некоторые из его недостатков. Целью было создать более удобную для разработчиков и гибкую платформу для программирования веб-приложений, чем Zope 2. Проект начался с разработки компонентной архитектуры, которая позволяет структурировать код в небольшие составные блоки с интуитивно понятными интерфейсами. Интерфейсы поддерживаются пакетом интерфейсов, чтобы обеспечить функциональность явно объявленных интерфейсов для языка Python. Первая производственная версия программного обеспечения, Zope X3, была выпущена 6 ноября 2004 г. В январе 2010 г. Zope 3 был переименован в BlueBream.
Целью проекта было помочь программистам использовать Zope для предоставления произвольных объектов Python в качестве объектов модели в сети без необходимости заставлять эти объекты выполнять определенные требования к поведению. В Zope 2 было много требований к поведению, позволяющих объектам участвовать в структуре, что привело к появлению большого количества базовых классов mixin и специальных атрибутов. BlueBream использует архитектуру модель / представление, отделяя код представления от кода проблемной области. Представления и модели связаны друг с другом архитектурой компонентов.
Библиотеки, лежащие в основе BlueBream, превратились в набор полезных библиотек для разработки веб-приложений, а не в один монолитный сервер приложений. BlueBream включает отдельные пакеты для интерфейсов, компонентной архитектуры, HTTP-сервера, издателя, базы данных объектов Zope (ZODB), шаблонов страниц Zope, I18N, политики безопасности и т. Д. Компонентная архитектура используется для их склеивания. Архитектура компонента настраивается с использованием ZCML (язык разметки конфигурации Zope), языка файлов конфигурации на основе XML.
Проект Zope 3 стал пионером в практике спринтов для разработки программного обеспечения с открытым исходным кодом. Спринты - это интенсивные занятия, когда программисты, часто из разных стран, собираются в одной комнате и работают вместе пару дней или даже несколько недель. Во время спринтов используются различные методы, заимствованные из гибкой разработки программного обеспечения, такие как парное программирование и разработка через тестирование. Помимо цели разработки программного обеспечения, спринты также полезны для географически разделенных разработчиков, чтобы встретиться лично и привлечь новых людей в проект. Они также позволяют участникам учиться друг у друга.
BlueBream считается стабильной структурой, используемой в производственных проектах по всему миру, в первую очередь Launchpad.
В результате разработки Zope 3 / BlueBream появились Сейчас многие независимые пакеты Python используются и разрабатываются как часть BlueBream, и, хотя многие из них можно использовать за пределами BlueBream, многие - нет. Проект Zope Toolkit (ZTK) был начат, чтобы прояснить, какие пакеты можно использовать за пределами BlueBream, и улучшить возможность повторного использования пакетов. Таким образом, Zope Toolkit является основой для фреймворков Zope. Zope 2.12 - это первый выпуск веб-фреймворка, основанного на Zope Toolkit, а для Grok и BlueBream были установлены выпуски на основе ZTK в течение 2010 года.
В 2006 году проект Grok был запущен рядом разработчиков Zope 3, которые хотели сделать технологию Zope 3 более гибкой в использовании и более доступной для новичков. С тех пор Grok регулярно выпускает релизы, и его основная технология (Martian, grokcore.component) также находит применение в других проектах, основанных на Zope 3 и Zope 2.
Разработчик (и) | Zope Corporation |
---|---|
Предварительный выпуск | 4.0b5 / 18 мая 2018 г.; 2 года назад (18.05.2018) |
Написано на | Python |
Операционная система | Кросс-платформенная |
Тип | Веб сервер приложений |
Лицензия | Общественная лицензия Zope |
Веб-сайт | www.zope.org |
В конце 2017 года началась разработка Zope 4. Zope 4 является преемником Zope 2.13, внося много изменений, которые не являются обратными совместимы с Zope 2.
Как упоминалось ранее, шаблоны страниц Zope сами по себе являются документами XHTML, что означает, что их можно просматривать и редактировать с помощью обычных редакторов HTML или совместимых с XHTML инструментов ( большое преимущество по сравнению с другими языками шаблонов, используемыми для веб-приложений). Шаблоны также можно проверять на соответствие XHTML, поэтому вы можете быть уверены, что они автоматически превратятся в правильный XHTML.
Однако эти шаблоны страниц не предназначены для отображения как есть. Вместо этого они помечены дополнительными элементами и атрибутами в специальных пространствах имен XML (см. Ниже). Эта дополнительная информация используется для описания того, как в конечном итоге должен обрабатываться шаблон страницы.
Вот несколько основных примеров. Чтобы условно включить определенный элемент, например элемент div, просто добавьте к элементу атрибут tal: conditionследующим образом:
...
Для управления тем, что появляется внутри элемента используйте атрибут tal: contentследующим образом:
Zope - Zope
...
Наконец, чтобы ввести или заменить значения атрибутов, используйте атрибут tal: attributesкак ниже. Вы можете использовать Python для изменения href во время выполнения.
...
Это очень беглое объяснение шаблонов страниц Zope. Поведение шаблонов страниц Zope почти полностью описывается языком шаблонов, зафиксированным в спецификациях TAL, TALES и METAL:
SchoolTool - это открытая информационная система для учащихся который использует Zope.
В Викиучебнике есть книга по теме: Zope |