270 likes | 414 Views
Предпосылки формирования нового подхода к проектированию динамических ресурсов всемирной паутины. а сп . Кейно П.П. Научный руководитель: проф., к.т.н. Силуянов А.В. Цель проекта.
E N D
Предпосылки формирования нового подхода к проектированию динамических ресурсов всемирной паутины асп. Кейно П.П. Научный руководитель: проф., к.т.н. Силуянов А.В.
Цель проекта • Дать пользователям Интернета, не обладающим навыками программирования, возможность создания веб-сайтов любой сложности вплоть до порталов и социальных сетей
Приложение Платформа Инфраструктура Облачные вычисления (Cloud computing)
Архитектура web-приложения Управление виртуальными серверами Шифрование передаваемых данных Apache (сервер) SSL Система управления контентом База данных Контроллер Обработчик XML-структуры ЯВУ (PHP, Ruby, Python) MySQL Конфигурация Представление Шаблоны Интерактивность Документ в браузере клиента JavaScript HTML Анимация Flash Таблица стилей CSS
….иначе – трясина Тьюринга • Бойтесь Тьюринговской трясины, в которой всё возможно, но ничего конкретного нельзя сделать просто • Алан Перлис
Уровни абстракции вweb Язык высокого уровня (PHP, Perl, Ruby) XML-структура + визуальный редактор Framework Система управления контентом (CMS)
Детализация сущностей Локация Динамический объект 1 Динамический объект 2 Динамический объект n Тип 1.1 Метод 1.1 Тип 2.1 Метод 2.1 Тип n.1 Метод n.1 Тип 1.2 Метод 1.2 Тип 2.2 Метод 2.2 Тип n.2 Метод n.2 Тип 1.n Метод 1.n Тип 2.n Метод 2.n Тип n.n Метод n.3 Каждый динамический объект и каждый тип данных такого объекта имеет права доступа не создание, редактирование и удаление. Причём как для групп, так и для отдельных пользователей.
Детализация сущностей index.html Информация о пользователе Главное меню Фотография Имя пункта меню (текст) new new Фото (изображение) update upd Имя (текст) new Название (текст) delete del Кол-во сообщений (ссылка) update Подменю (ссылка) delete Автор (ссылка) Права доступа: — гости (авторизированные пользователи) — все (в том числе гости) — администраторы — модераторы
Структурно! А не алгоритмически Объявляем модели данных: <object name="category"> <field name="title" format="none" /> <link child="photo" /> </object> <rights create="all" modify="moder" delete="admin"> <object name="photo"> <image name="picture" /> <date name="date" /> <field name="title" format="letters digits" /> <rating name="rate" /> <link parent="author" /> </object> </rights>
Структурно! А не алгоритмически Объявляем локацию с нужными объектами <location name="index.html"> <rights show="authorized"> <object name="category" template="cat.tmpl"/> </rights> <object name="photo" condition="MAX(rate)" template="bestphoto.tmpl" /> </location>
О методах доступа к данным • Просмотр • Создание (new) • Редактирование(edit/update) • Удаление (delete) Автоматически генерируется страница, согласно шаблону Например при заходе на http://sitename.tld/location/object/newсгенерируется страница для ввода данных для объекта "object".
Производительность языков программирования
Применение C++ в Web Схема Андрея Шетухина (Rambler Co.)
Приложение Платформа Инфраструктура Облачные вычисления (Cloud computing)
Предоставление программного продукта • Как сервис • Как модуль для Web-сервера
Выводы • Сохраняем гибкость, не теряем в удобстве • Структурное описание – хорошая почва для визуализации (браузер "наоборот") • За облачной платформой будущее!
Вопросы? pavel@mati.ru http://ppk.tel