Что может оправдать сложность Plone? - PullRequest
12 голосов
/ 07 декабря 2008

Plone очень сложен. Zope 2, Zope3 , Five , ZCML , ZODB , ZEO , a целая куча сокращений и аббревиатур.

Трудно начать, и текущее состояние кажется неопределившимся. Он в основном основан на Zope2, но включает в себя Zope3 через Five. И везде есть файлы конфигурации XML.

Крутая кривая обучения окупается? Эта сложность все еще оправдана сегодня?

Справочная информация: мне нужна платформа. Клиенты часто нуждаются в CMS. В настоящее время я читаю « Professional Plone Development », без предварительного знания Plone.

Проблема: клиенты не всегда хотят одного и того же, и вы не можете знать заранее. Одно можно сказать наверняка: им не нужна стандартная тема Plone. Но любая дополнительная функция - это риск. Вы не можете просто начать и сказать « Если вы хотите увидеть сложность Plone, вы должны попросить об этом. », когда вы не знаете, достаточно ли хороша система для планирования.

Ответы [ 8 ]

29 голосов
/ 08 декабря 2008

Трудно ответить на ваш вопрос без дополнительной информации. Оправдана ли сложность, если вы просто хотите блог? Оправдана ли сложность, если вы создаете корпоративную интрасеть для 400+ человек? Да. Это хорошая инвестиция, если вы ищете консультанта? Абсолютно! Там много работы с Plone, и она платит намного лучше, чем обычная работа PHP.

Я бы посоветовал вам уточнить, что вы пытаетесь создать, и попросить совета у форумов Plone. У Plone очень зрелое и дружелюбное сообщество, и он обязательно сообщит вам, если то, что вы пытаетесь сделать, плохо подходит для Plone. Конечно, вы можете делать все, что захотите, с Plone, но есть области, где это лучшее решение доступно, другие области, где будет много работы, чтобы изменить его на что-то другое.

Некоторый фон:

Причиной сложности Plone в данный момент является то, что он переходит на более современную архитектуру. Сейчас он соединяет старый и новый подходы, что добавляет сложности до тех пор, пока переход в основном не завершится.

Plone делает это, чтобы не оставлять своих клиентов позади, нарушая обратную совместимость, к которой они относятся очень серьезно - в отличие от других систем, которые я мог бы упомянуть (но не буду;).

Вы заботитесь о своих данных, сообщество Plone заботится о своих данных - и мы хотели бы, чтобы вы имели возможность перейти на новые и более качественные версии даже при переходе на новую архитектуру. Это одна из сильных сторон сообщества Plone, но, конечно, есть штраф за изменение самолета во время его полета, и это немного временная, дополнительная сложность.

Кроме того, Plone как сообщество уделяет большое внимание безопасности (сравните ее с любой другой системой по обнаруженным уязвимостям) и очень профессиональной культуре, которая ценит хорошую архитектуру, тестирование и возможность повторного использования.

В качестве примера рассмотрим текущую версию Plone, которая разрабатывается (что станет 4.0):

  • Он запускается в 3-4 раза быстрее, чем текущая версия.
  • Он использует примерно на 20% меньше памяти, чем текущая версия.
  • Существует гораздо более простая система типов в работе (Ловкость), которая значительно снизит сложность и ускорит систему, сохраняя при этом тот же уровень функциональности
  • База кода уже на 20% меньше текущей версии доставки и становится еще меньше.
  • Ранние тесты новой системы типов показывают 5 & times; ускорение редактирования контента, и мы еще не начали оптимизировать эту часть.

- Александр Лими, соучредитель Plone (и слегка предвзято;)

23 голосов
/ 09 декабря 2008

Если вы хотите увидеть сложность Plone, вы должны попросить об этом. Для большинства людей этого просто нет. Он устанавливается за пару минут через установщик в один клик. Затем один клик для входа в систему, один щелчок для создания страницы, использование редактора WYSYWIG и один щелчок для сохранения. Все через интуитивно понятный веб-интерфейс. Plone - это продукт.

Если вы хотите использовать его в качестве «платформы», то платформа представляет собой стек из более чем миллиона строк кода, который реализует полный пакет управления контентом. Никто не знает всего этого. Тем не менее, все эти «аббревиатуры» и «файлы» являются свидетельством программного обеспечения, которое разбито на компоненты, так что никто не должен знать все это. Вы можете получить столько глубины или глубины, сколько вам нужно. Если есть что-то, что вам нужно для какого-либо аспекта управления контентом, оно уже есть, вам не нужно создавать его с нуля, и вы можете сделать это способом, который соответствует широкой практике и обзору.

9 голосов
/ 15 января 2009

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


Этим летом мой шахматный клуб попросил меня создать новый веб-сайт, на котором члены совета должны иметь возможность добавлять новости, статьи, ... Походит на CMS. Будучи разработчиком на Python, я посмотрел на Plone и купил книгу Aspeli Professional Development Plone (отлично написано, кстати).

Мне потребовалось 3 недели отпуска, чтобы изучить книгу и создать первый макет сайта.

Через 3 недели я понял, что у Plone есть очень хорошие вещи, но также и очень расстраивающие На позитивной стороне

  • если вам не нужно настраивать Plone, Plone отлично подходит для функций и макета
  • Plone имеет хорошую модель безопасности
  • Plone имеет хорошие готовые рабочие процессы
  • Plone - многоязычный (что мне нужно)

С другой стороны

  1. Plone ужасно медленный. На моей платформе разработки (3-летний ПК с 512 МБ ОЗУ) для запуска Plone требуется 30 секунд, а для перезагрузки страницы - от 10 до 15 секунд
  2. вам нужно множество различных технологий для настройки или разработки даже самых простых вещей
  3. TAL и Metal не являются современными и не адаптированы к ОО-дизайну Plone.
  4. Получение по умолчанию неверно. Сбор данных может быть очень полезным (например, для обеспечения безопасности), но он должен быть явно определен при необходимости. Это недостаток дизайна
  5. Plone не различает контент и макет. Это серьезный недостаток дизайна. Нет причин применять настройки безопасности и роли, например каскадная таблица стилей или HTML, который создает макет из 3 столбцов, и нет никаких причин, почему эти элементы должны быть в ZODB, а не в файловой системе
  6. Plone не делает различий между веб-дизайнером и редактором / издателем контента, опять же серьезный недостаток. Редактор контента / издатель добавляет / просматривает контент, работающий на живом сайте. Веб-дизайнер добавляет / изменяет типы контента, формы и макет на тестовом сервере и переносит его на работающий сервер, когда он будет готов. Ограничения безопасности, налагаемые Plone для редактора контента, не должны применяться к веб-дизайнеру, у которого есть доступ к файловой системе на сервере.
  7. Plone не делает различий между графическими аспектами и аспектами программирования веб-дизайнера. Художники-графики используют инструменты, которые говорят только на html, css и немного на javasccript, но не на Python, адаптерах и других передовых концепциях программирования. Как следствие, полная система снятия шкур в Plone - это кошмар

Я предполагаю, что Plone очень медленный из-за пунктов 4, 5, 6 и 7.

Точки 6 и 7 заставили меня сбросить Plone. Я искал другие варианты и в конце концов решил разработать свою собственную CMS на Pylons, которая является невероятно быстрой по сравнению с Plone. На том же сервере разработки у меня время запуска 1 секунда, а время загрузки страницы не поддается измерению.

Сайт www.kosk.be работает (на голландском). CMS, названная Red Devil, будет запущена как отдельный проект с открытым исходным кодом, начиная со следующего года

7 голосов
/ 08 декабря 2008

Я вижу четыре вещи, которые могут оправдать затраты времени на использование Plone: ​​

  • У Plone большое и полезное сообщество. Большинство вещей, которые вам нужны, кто-то еще
    уже делал когда-то в прошлом. Вероятно, он задал несколько вопросов и получил помощь ответы, или он написал учебник. Обычно это оставляет следы легко найти. о том, как он это сделал.
  • Вам не нужно будет понимать всю сложность для многих ваших потребностей в настройке.
  • Разработчики Plone знают об их сложном стеке и обсуждают, как это может быть снижается. Plone доказал в прошлом, что он способен обновляться и отбрасывать старые чистая инфраструктура с определенными фазами устаревания.
  • Есть много локальных групп пользователей с полезными людьми.

Ой, подождите, мне сказали, что конференции разработчиков Plone - одни из лучших! Как этот

3 голосов
/ 13 мая 2009

аккреции.

3 голосов
/ 24 января 2009

С точки зрения системного администратора Plone просто стесняется быть абсолютным дьяволом. Обновление, обслуживание и установка в том месте, где вы хотите установить, на платформе Linux намного сложнее, чем необходимо. Это всего лишь два моих цента, и поэтому я обычно предпочитаю избегать стека Zope / Plone.

Примечание: лучше с новыми версиями, но с более старыми версиями .... тьфу

2 голосов
/ 17 марта 2011

О комментарии здесь Я думаю, что Plone не работает так (по крайней мере, больше).

1 - Plone несколько медленнее, чем другие решения CMS, но от стандартной настройки до решения Apache-Varnish-Zope-Relstorage есть много места для оптимизации.

2 - Это правда. Ответ здесь отчасти объясняет это, но действительно Плон - сложное животное.

3 - Не уверен, что вы имеете в виду. Выражения TAL Path основаны на концепции обхода атрибутов объекта. Мне кажется ОО.

4 - Верно. Хотя после того, как вы поймете, как работает Acquisition, вам не удастся это сделать. И в Plone, я полагаю, не так много зависит от Приобретения.

5 - Неверно. Шаблоны страниц Zope предназначены для отделения контента от презентации. Тот факт, что контент и презентацию можно просматривать из ZODB (и на самом деле большинство шаблонов остаются в файловой системе, вы просто видите «просмотр» их в ZODB), больше связан с тем, что ZODB является большим объектом база данных - что, в свою очередь, не означает, что все они являются содержанием. Все в «чистой» ОО-системе является объектом, это только тот тип объекта (объекты представления, объект контента и т. Д.), Который имеет значение.

6 - Plone делает различие между веб-дизайнерами и создателями контента. Дизайнеры выполняют все настройки (шаблоны, CSS, JS и т. Д.), А затем создатели контента создают контент с помощью Plone UI. Дело в том, что Plone - это в основном CMS, а это значит, что создатели контента должны быть непрофессионалами с точки зрения дизайна.

7 - Частично верно. Учитывая, что структура пользовательского интерфейса не изменится, вся спецификация презентации содержится в файлах CSS. Если необходимо изменить структуру пользовательского интерфейса, дизайнер может работать с программистом :-), чтобы адаптировать шаблоны.

Я полагаю, что ни в одной системе, которая выводит динамические страницы, разработчик не может свободно говорить только на HTML, CSS и JS и не использовать другие технологии, будь то PHP, Python, ASP или Java. Если он это сделает, то обязательно найдется программист, который получит HTML, CSS и JS от дизайнера и «его динамизирует». Эта модель определенно существует в Plone.

0 голосов
/ 12 января 2016

Не используйте его, если не нужно. Вся вселенная ZOPE - это динозавр. Выросший на века, собрал много грязи и ржавчины. Многие вещи были бы сделаны совершенно по-другому. Слишком сложный для большинства вещей, сложный для обработки сложных вещей. Это противоположность тонкого и масштабируемого дизайна. И для серьезного исправления этого я не вижу необходимой рабочей силы, вовлеченной в проект.

Извините за резкие слова, я также хотел бы, чтобы это было немного лучше.

...