cms: устройство, возможности и перспективы (Сергей...
TRANSCRIPT
CMS: устройство, возможности и перспективы
Сергей Панарин, ACTIVITI
Содержание
• Введение
• Что такое CMS?
• Устройство
• Возможности
• Перспективы
• Заключение
Ответим на вопросы
• Что было до CMS?
• Что такое CMS?
• Из чего состоит CMS?
• Что такое ядро, API, шаблоны?
• Что ждет CMS?
Не ответим
• Какая CMS лучше?
До CMS…
• Век «статики»
• Сайт – набор текстовых файлов и изображений
• Пользователи постоянно хотели большего!
HTML-страница
ПРОБЛЕМА
• Постраничная навигация
• 11 страниц новостей
• Вы добавляете 1 новость
• Вам нужно изменить… все 11 страниц!
Статика–Динамика
• Статическая страница («статика») – мало меняющаяся со временем информация, которая хранится в виде HTML-файла на сервере.
• Динамическая страница — веб-страница, сгенерированная программно. Сервер генерирует HTML-код, зависящий от запроса пользователя.
В действии• www.site.ru/news.php?page=1
• www.site.ru/news.php?page=3
• www.site.ru/news.php?page=11
• Программа news.php обрабатывает номер запрошенной страницы и возвращает нужные новости
• 11 страниц и только 1 программа news.php!
CMS – это программа
• На данный момент это большая и сложная программа
• Она состоит из множества таких программ как news.php
Пример 1С-Битрикс
• 330 000 строк кода
• 3800 функций
• 200 человеко-лет работы!
CMS – это программа
• Основные функции CMS:
• Добавление/Изменение/Удаление информации на сайте
• Отображение информации и взаимодействие с пользователями
CMS – это программа
• Основные части CMS:
• Административная (управление информацией)
• Публичная (отображение информации и взаимодействие)
Простейшая CMS
• Редактор статических страниц
• Редактор новостей
• Скрипт отображения новостей
• База данных
Устройство
Устройство• Ядро
• API
• База данных (БД)
• Модули
• Компоненты
• Шаблонизатор
• Публичная часть
Ядро
• общее функционирование системы
• взаимодействие всех модулей
• распределение прав доступа
• управление пользователями и политика безопасности
• управление шаблонами
API• API (Application Programming Interface) – набор функций, который программист может использовать для доступа к функциональности программы, модуля, библиотеки.
• Интерфейс CMS
• Функции CMS, которые можно использовать для управления информацией и ее отображения
API
• вывести_список_пользователей();
• сформировать_заказ(параметры);
• удалить_элемент(параметры);
Примеры API
• Windows API
• POSIX
• OpenGL
• Direct3D
Шаблонизатор
• Задача – вывод данных в нужном виде
• Шаблон – оформление данных (“дизайн”)
Схема шаблонизацииДанные для отображения
Шаблон
Шаблонизатор HTML
Пример шаблона
Полученный код
Внешний вид
Шаблонизаторы
• Популярные шаблонизаторы:
• PHP
• Smarty
• XSL
Базы данных
• SQLite
• MySQL
• PostgreSQL
• Microsoft SQL Server
• Oracle
Модули
• Модуль – функционально законченная часть системы, выполняющая определенные задачи
Примеры
• Публикации
• Каталог
• Поиск
• Фотогалерея
Компоненты
• Компонент – часть модуля, представляет из себя логически завершенный код, принимающий ряд параметров, выполняющий ряд действий и выводящий какой-либо результат (например, в виде HTML-кода).
Компонент “Список новостей”
Компонент “Корзина”
Возможности• Многоязычность
• Многосайтовость
• Интеграция с 1С, SAP
• Интеграция с платежными системами и службами доставки
• Документооборот
Перспективы
• Упрощение интерфейсов
• Упрощение интеграции с другими системами
Заключение
• CMS – это программа
• CMS – это ядро, API, база данных, модули, компоненты, шаблонизатор, шаблоны
• Публичная часть – это и есть сайт!
Спасибо за внимание!
Интернет-компания ACTIVITI
www.activiti.ru
(499) 136-19-37
Москва, Ленинградский проспект, д. 80
Сергей Панарин, [email protected]