CMS: устройство, возможности и перспективы (Сергей...

Post on 16-Jun-2015

706 views 1 download

Transcript of CMS: устройство, возможности и перспективы (Сергей...

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

Сергей Панарин, sergey@activiti.ru