Zope. Разработка Web-приложений и управление контентом. С.Спикльмайр и др.

Книга ориентирована на специалистов, столкнувшихся с необходимостью быстрого развертывания сайта. Здесь рассмотрены свыше 50 продуктов Zope, позволяющих решать типичные проблемы Web-разработки; приведены рекомендации по их использованию и интеграции с другими системами, а также по написанию и отладке собственных Zope-продуктов.

Оглавление

  • Предисловие
  • Введение
  • Часть I. Отличие Zope от других продуктов
    • Глава 1. Цель Web — оптимизация Web-разработки
      • Zope — среда публикации объектов
      • Публикация — это процесс
      • Динамическая генерация страниц
      • Как построить Web-сайт
      • Встроенный графический интерфейс для управления контентом
      • Элементы аналогичны SSI, только лучше
      • Правила заимствования
      • Поведение и свойства объектов
      • Группировка взаимосвязанных элементов
      • Уникальные комбинации
      • Алхимия заимствования
      • Пакеты — взгляд изнутри
      • Элементы программирования — присваивание значенийпеременным
      • Подготовка к созданию страницы — выявление элементов
      • Установка Zope
      • Интерфейс управления Zope: все под контролем
      • Резюме
    • Глава 2. Мышь как инструмент построения сайта
      • Интерфейс TTW
      • Управление страницами и элементами
      • Новый тип объектов Zope — папка
      • Новые типы объектов — графика и файлы
      • Интерфейсы FTP и WebDAV
      • Манипуляции мышью: копирование, вставка и удаление
      • Основы программирования
      • Дополнительные возможности DTML — управление потоком выполнения
      • Выражения в DTML
      • Не усложняйте код
      • Заставим сайт работать
      • Генерирование HTML
      • Резюме
  • Часть II. Применение компонентов Zope
    • Глава 3. Публикация событий в Web
      • Выявление потребностей пользователя
      • Односторонняя сеть
      • Тег Calendar
      • Определение нового тега DTML
      • Что можно поместить между тегами
      • Простые объекты событий
      • Как избежать неразберихи путем изолирования событий
      • Управление календарем со стороны пользователя
      • Объект TinyTablePlus
      • Электронная мини-таблица
      • Доступ к данным в таблице TinyTablePlus
      • Объект ZCatalog
      • Мощная поисковая система для Zope
      • Индексация — наиболее трудная часть задачи
      • Поисковые формы
      • Z-классы
      • Создание Z-класса
      • Включение Z-классов в свою систему
      • Python-сценарии
      • Знакомство
      • Продукт EventFolder
      • Резюме
    • Глава 4. Инструменты Zope для организации дискуссий
      • Проблемы безопасности Zope
      • Практический пример
      • Проверим, все ли правильно сделано
      • Ввод данных пользователей
      • Продукт ZUBB
      • ZUBB — реализация BBS в Zope
      • Установка ZUBB
      • Настройка и использование ZUBB
      • ZWiki — разделяемая доска
      • Wiki
      • Реализация Wiki в Zope
      • Использование ZWiki
      • Продукт Squishdot
      • Squishdot — реализация Web-дневника для Zope
      • Установка Squishdot
      • Использование объекта Squishdot
      • Настройка электронной почты для Squishdot
      • Продукт CMF
      • Что такое портал
      • Описание CMF
      • Установка CMF
      • Использование CMF
      • Как стать членом портала
      • Наполнение портала контентом
      • Продукт Tracker
      • Установка Tracker
      • Конфигурирование Tracker
      • Использование Tracker
      • Резюме
    • Глава 5. Web-почта
      • Доставка уведомлений пользователям
      • Отправка почтового сообщения из программы с помощью тега sendmail
      • Объект MailHost
      • Необязательные параметры объекта MailHost
      • XRON — автоматический планировщик задач
      • Установка XRON
      • Конкретная задача XRON
      • Продукт POPMail
      • Установка POPMail
      • Использование POPMail
      • Библиотека POPLib
      • Продукт IMapClient
      • Установка IMapClient
      • Продукт ZMailIn
      • Установка ZMainIn
      • Конфигурирование ZMailIn
      • Использование ZMailIn
      • Резюме
    • Глава 6. Новости, опросы и другие Web-инструменты
      • Локальный доступ к внешним ресурсам
      • Продукт RDFSummary
      • Установка RDFSummary
      • Включение объекта RDFSummary в сайт
      • Опросы
      • Продукт Poll
      • Установка продукта Poll
      • Создание онлайнового опроса
      • Инструменты для создания инструментов
      • Web-формы для конструирования Web-форм
      • Установка Formulator
      • Создание Web-формы с помощью продукта Formulator
      • Объект EmailField
      • Как быстро сделать красивую Web-страницу
      • Резюме
  • Часть III. Управление сайтом и контентом
    • Глава 7. Делегирование, базы данных и пользователи
      • Управление пользователями
      • Роли и полномочия
      • Встроенная система безопасности
      • Выбор правильных инструментов
      • Установление соединения
      • Методы ZSQL
      • Замена адаптера Zope
      • Промышленная база данных
      • Что не хочет знать Web-мастер об SQL
      • Внешняя аутентификация
      • Каталоги и протоколы
      • Резюме
    • Глава 8. Контент должен быть под контролем
      • Запрос и ответ по протоколу HTTP
      • Тестирование "цели" вручную
      • Подобъекты объекта REQUEST
      • Имена полей форм и преобразование типов
      • Почему работает процесс заимствования
      • Контекст и вложение
      • Пример соотношения между контекстом и вложением
      • Заимствование на уровне языка Python
      • Построение непротиворечивых шаблонов
      • Объекты как строительные блоки
      • Начнем сверху
      • Вернемся к началу
      • Шаблоны
      • Приступим к изучению CMF
      • Инструментальные средства CMF
      • Обличья, выбираемые пользователем
      • Адаптация стандартного метода
      • Добавление своего типа контента
      • Шаблоны страниц в Zope
      • TAL и TALES
      • Макроязык METAL
      • Резюме
    • Глава 9. Управление временем и Z-каталоги
      • Дата и время в Zope
      • Объект DateTime
      • Обратимся к исходному тексту объекта DateTime
      • Математические операции с объектами DateTime
      • Добавление объекта DateTime к Z-классу CalendarEvent
      • Углубленное изучение Z-каталогов
      • Расширенный поиск
      • Z-каталог позволяет каталогизировать почти все
      • Внешние методы и модуль ZPublisher/Client
      • Резюме
    • Глава 10. Инструменты Web-мастера
      • Хостинг виртуальных сайтов
      • Подробный пример
      • Доступ к файлам
      • Обеспечение безопасности сайта
      • Выявление неполадок
      • Резюме
  • Часть IV. Разработка Web-приложений
    • Глава 11. Проектирование приложений для интеграции с помощью каркаса ZPatterns
      • Назначение продукта ZPatterns
      • Одного объектно-ориентированного программирования недостаточно
      • Продукт ZPatterns дает объектам новую жизнь
      • Основные идеи продукта ZPatterns
      • Конкретный пример: Задачи, Цели, Исполнители
      • Установка ZPatterns и примера ToDo
      • Подготовка участников
      • Уточнение состава атрибутов, методов и взаимодействий
      • Тактика и словарь ZPatterns
      • Классы и их сферы ответственности
      • Словарь ZPatterns
      • Каркас ZPatterns позволяет объединить компоненты
      • Делегирование обязанностей
      • Установление соединений: провайдеры атрибутов
      • Отношения с более высокими кратностями
      • Разделение элементов пользовательского интерфейса между объектами и специалистами
      • Назначение Исполнителя Задаче
      • Резюме
    • Глава 12. Интеграция приложений с помощью каркаса ZPatterns
      • Интеграция приложений — трудная задача
      • Объект-участник: роль зависит от контекста
      • Каркас ZPatterns устанавливает соответствие объектов
      • Объединение объектных моделей
      • Виртуальные экземпляры — это объектно-ориентированные имитаторы
      • Основную работу выполняют подключаемые модули
      • Построение интегрированной системы Academic Data System из программ Attendance и Lunch
      • Приложение "Учет посещаемости"
      • Полный пример приложения
      • Интеграция двух несвязанных приложений
      • Пример Python-продукта, устанавливаемого в файловой системе
      • Резюме
    • Глава 13. Управление пользователями: интерфейс с внешними системами
      • Пользователи, полномочия и роли
      • Управление пользователями как ключ к безопасности
      • Аутентификация — доказательство подлинности
      • Роли, полномочия и модель безопасности Zope
      • Каркас ZPatterns и пользователи. Объект LoginManager
      • Конфигурирование простого менеджера аутентификации с помощью объекта GenericUserSource
      • Интеграция пользователей в масштабе предприятия
      • Пользователи в приложении "Учет посещаемости"
      • Предоставление родителям возможности следить, ходит ли их чадо в школу
      • Резюме
    • Глава 14. Коллективная разработка: тестирование и управление версиями
      • У семи нянек дитя без глазу
      • Версии Zope
      • Система CVS как средство управления версиями проектов
      • Совместная работа Zope и CVS
      • Конфигурирование продукта ZCVSFolder
      • Типичный сценарий
      • Организация выкладывания с помощью CVS
      • У каждого разработчика есть собственный экземпляр Zope
      • Подготовка тестового сервера
      • Оперативное обновление
      • Тестирование и версии
      • Тестирование элементов — это тестирование каждой части
      • Тестирование элементов на уровне языка Python
      • Тестирование элементов в Zope
      • Резюме
  • Часть V. Организация критически важных приложений
    • Глава 15. Вертикальное масштабирование
      • О порядке величин
      • От класса к школе и далее к округу
      • Оценка и выбор инструментов
      • Профилирование
      • Распределение нагрузки
      • Внешнее обслуживание статических страниц
      • Кэширование и proxy-серверы
      • Объекты ZEO
      • Распределение и репликация объектов
      • Приближение обработки к данным
      • Резюме
    • Глава 16. Резервное копирование, восстановление после сбоев и распределенная обработка
      • Различные способы экспорта объектов
      • Хранение данных в файловой системе и альтернативные варианты
      • Простое реплицирование и резервное копирование
      • Другие варианты хранения
      • Продукт ExternalMount
      • Хранилище Berkeley Storage
      • Хранилище Oracle Storage
      • Распределенная обработка сегодня
      • Zope как Web-клиент
      • Протокол XML RPC
      • Использование XML для других целей
      • CORBA и Zope
      • Резюме
  • Глоссарий
  • Предметный указатель