Разработка информационного web-сайта на основе системы «1С-Битрикс: Управление сайтом»

Автор работы: Пользователь скрыл имя, 29 Апреля 2014 в 17:16, дипломная работа

Краткое описание

Web-приложение – клиент-серверное приложение, в котором сервером выступает web-сервер, клиентом программа или устройство, способное получить доступ к web-серверу. Логика web-приложения распределена между сервером и клиентом, хранение данных осуществляется преимущественно на сервере, обмен информацией происходит по сети.
Web - сервер — это сервер, принимающий HTTP-запросы от клиентов, обычно веб-браузеров, и выдающий им HTTP-ответы, обычно вместе с HTML-страницей, изображением, файлом, медиа-потоком или другими данными.
CMS (Content management system) – компьютерная система или программа, используемая для обеспечения и организации совместного процесса создания, редактирования и управления текстовыми и мультимедиа документами.

Содержание

Обозначения и сокращения 6
Определения 7
Введение 9
1. Описание основных используемых технологий и языков программирования 10
1.1. Общие сведения 10
1.2. Язык программирования PHP 10
1.3. Web-сервер Apache 11
1.4. СУБД MySQL 12
1.5. Язык программирования JavaScript 12
1.6. Технология AJAX 13
1.7. Таблица стилей CSS 14
1.8. Общая схема работы web-приложения 14
2. Описание системы «1С – Битрикс: Управление сайтом» 16
2.1. Общие сведения 16
2.2. Преимущества и недостатки системы 16
2.3. Целесообразность использования системы 18
2.4. Сравнение с другими системами 19
3. Описание API системы «1С – Битрикс: Управление сайтом» 21
3.1. Общие сведения 21
3.2. API модуля «Главный модуль» 21
3.3. API модуля «Информационные блоки» 23
4. Формирование требований к сценариям работы web-приложения 26
4.1. Общие сведения 26
4.2. Список требований 26
5. Диаграмма информационных блоков 29
5.1. Общие сведения 29
5.2. ER – диаграмма данных web-приложения 29
5.3. Определение информационных блоков 31
6. Описание программных компонентов 34
6.1. Создание общей структуры страниц web-приложения 34
6.2. Реализация структуры страниц web-приложения, физическая структура 36
6.3. Список программных компонентов 39
6.3.1. Компонент «Список всех игр» 39
6.3.2. Компонент «Список новых и выходящих игр» 40
6.3.3. Компонент «Список лучших игр» 42
6.3.4. Компонент «Список 100 лучших игр» 43
6.3.5. Компонент «Фильтр по играм» 44
6.3.6. Компонент «Поиск по играм» 45
6.3.7. Компонент «Автоподсказки в поиске» 46
6.3.8. Компонент «Список обзоров к игре» 47
6.3.9. Компонент «Детальная страница игры» 48
6.3.10. Компонент «Форма поиска» 48
6.3.11. Компонент «Страница разработчика игры» 49
6.3.12. Компонент «Список лучших игр за год» 50
6.4. Диаграмма связей между страницами web-приложения и компонентами 51
6.5. Особенности реализации сценариев работы web-приложения. 51
6.5.1. Общие сведения 51
6.5.2. Сохранение состояния страниц при использовании AJAX – запросов 52
6.5.3. Обработка событий панели управления. 55
7. Резервное копирование данных web-приложения. Система управления версиями 59
7.1. Общие сведения 59
7.2. Реализация резервного копирования 59
7.3. Система управления версиями 62
7.3.1. Описание системы Subversion 62
7.3.2. Настройка Subversion для работы с web-приложением 64
8. Нагрузочное тестирование 69
8.1. Общие сведения 69
8.2. Техника проведения нагрузочного тестирования 69
8.3. Оценка результатов тестирования 71
Заключение 76
Список использованных источников 77
Приложение A. Принцип работы системы «1С – Битрикс: Управление сайтом» 78
А.1. Общие сведения 78
А.2. Модульная структура системы 78
А.2.1. Главный модуль 79
А.2.2. Модуль «Управление структурой» 79
А.2.3. Модуль «Информационные блоки» 80
А.3. Компоненты 81
А.3.1. Общие сведения 81
А.3.2. Файловая структура компонента 81
А.3.3. Схема обмена данными между файлами компонента 85
А.3.4. Публичный раздел системы 87
А.3.4.1. Порядок загрузки страницы web-приложения 87
А.3.4.2. Подключение модулей системы 87
А.3.4.3. Подключение шаблонов web-приложения 88
А.3.4.4. Подключение компонентов web-приложения 88
Приложение Б. Требования заказчика к работе web-приложения и дизайн-концепция 90
Приложение В. Исходные коды программных компонентов 95
В.1. Компонент games.calendar 95
В.2. Компонент games.raiting 99
В.3. Компонент games.filter 102
В.4. Компонент games.search 113
В.5. Компонент games.detail 117
В.6. Компонент search_autocomplete 121
В.7. Компонент reviews.list 126

Прикрепленные файлы: 1 файл

СОЗДАНИЕ САЙТА.doc

— 1.87 Мб (Скачать документ)

Для реализации сущности «Разработчик» следует предусмотреть информационный блок «Разработчики». Экземпляры сущности реализуются в информационном блоке посредством элементов, атрибуты сущности – посредством полей и свойств элементов. Среди свойств информационного блока следует предусмотреть поле, которое будет содержать в себе набор идентификаторов разделов информационного блока «Игры». Таким образом, реализуется связь с сущностью «Платформа».

После определения информационных блоков можно построить диаграмму связи между информационными блоками.

Рисунок 4 – Диаграмма информационных блоков

 

6. Описание программных компонентов

6.1. Создание общей структуры страниц web-приложения

Совокупность файлов и папок в файловой системе web-приложения, каждая из которых содержит некоторый сценарий или другое ценное содержимое, составляет структуру страниц web-приложения.

Для того чтобы составить правильную структуру web-приложения, следует определить, какие из требований в сценариях каких из web-страниц будут реализованы.

Далее рассмотрим подробно сформированные ранее требования и попробуем определить страницы web-приложения, ответственные за реализацию того или иного требования.

Web-приложение должно выводить список всех игр для каждой из платформ. Логично предположить, что для каждой из платформ следует предусмотреть страницу «Все игры», на которой будут выведен список всех игр, возможно фильтры и возможность выбора списка игр по алфавиту.

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

Web-приложение должно выводить список выходящих игр для каждой из платформ. Должна быть возможность просматривать список игр за конкретный месяц. Данные требования реализуются аналогично предыдущим требованиям, страницы будут называться «График выхода» и «Весь график выхода».

Web-приложение должно выводить список игр в порядке убывания рейтинга для каждой из платформ. Для реализации данного требования следует предусмотреть страницу «Лучшие игры», на которой будет выведен список лучших игр с возможностью фильтрации. Согласно пожеланиям заказчика следует предусмотреть также переход с данной страницы на страницу «Все лучшие игры», где будет отображен постраничный список всех игр, начиная с игры с самым высоким рейтингом, также возможностью фильтрации.

Web-приложение должно выводить список 100 лучших игр для каждой из платформ. Для реализации данного требования следует предусмотреть страницу «100 лучших игр».

Web-приложение должно выводить детальную страницу игры. Для реализации данного требования следует предусмотреть страницу «Детальная страница игры». На этой же странице будет реализовано требование «web-приложение должно выводить список обзоров к игре», требование «обзоры должны делиться на русские и английские в зависимости от изданий - источников обзоров и сортироваться по оценке издания к игре и важности издания», и требование «web-приложение должно выводить список скриншотов к игре», т.к. обзоры является неотъемлемой частью игры, как и список скриншотов.

Web-приложение должно отображать список найденных игр для каждой из платформ. Для реализации данного требования стоит предусмотреть страницу «Результаты поиска по играм».

Web-приложение должно выводить список игр за год для каждой из платформ. Для реализации данного требования стоит предусмотреть страницу «Лучшие игры за год».

Web-приложение должно выводить информацию о разработчике игры. Для реализации данного требования стоит предусмотреть страницу «Страница разработчика игры».

Таким образом, руководствуясь определенным выше списком страниц, можно составить схему связей между страницами:

Рисунок 5 – Общая структура страниц web-приложения

 

Замечание. На данном и следующих рисунках данного раздела стрелки обозначают возможность переходов между страницами web-приложения.

Схема, отображенная на рисунке 5, является общей. В ней не задано тонкостей реализации, т.е. конкретных названий страниц в файловой структуре web-приложения. Тем не менее, эта структурная схема является основополагающей для последующей реализации структуры web-приложения.

6.2. Реализация структуры страниц web-приложения, физическая структура

Под реализацией структуры страниц web-приложения подразумевается непосредственное создание файлов и папок согласно схеме и размещение на компьютере web-приложения.

Для того чтобы физическая структура была ясна и логически верно построена, каждой странице общей схемы страниц web-приложения поставим  в соответствие папку файловой системы web-приложения, внутри которой будет расположен файл index.php, который будет определять сценарий работы страницы.  Таким образом, согласно стандартным настройкам web-сервера, URL вида http://www.metagames.ru/index/new/ инициирует выполнение сценария index.php.

Таким образом, если использовать построенную выше общую схему страниц web-приложения, то получим следующее:

Рисунок 6 – Физическая структура страниц web-приложения

Соответствие папок общей и физической структуры, изображенной на рисунке 6, представлено ниже:

 

Таблица 1 – соответствие элементов общей и физической структуры web-приложения

Главная страница

index.php

Все игры

pc, xbox_360, index (платформа)

Новые игры

платформа / new

Все новые игры

платформа / new / all

График выхода

платформа / new / upcoming

Весь график выхода

платформа / upcoming / all

Лучшие игры

платформа / top

Все лучшие игры

платформа / top / all

100 лучших игр

платформа / top_100

Результаты поиска по играм

Search

Детальная страница игры

Detail

Страница разработчика игры

Developer

Лучшие игры за год

платформа / year_top


 

Если отобразить структуру в виде дерева папок и файлов, получим следующий вид:

корневая_директория

  index.php

  pc

    new

      index.php

      all

        index.php

    upcoming

      index.php

      all

        index.php

    top

      index.php

      all

        index.php

    top_100

      index.php

    year_top

      index.php

  --- Другие_платформы ---

  search

    index.php

  detail

    index.php

  developer

    index.php

6.3. Список программных компонентов

После того, как структура страниц web-приложения создана, следует перейти к следующему этапу – написание сценариев работы страниц. В системе «1С – Битрикс: Управление сайтом» для реализации сценариев используются программные компоненты.

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

6.3.1. Компонент «Список всех игр»

Имя компонента

games.main

Реализация требований

1, 2


 

Логика работы:

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

Параметры компонента:

Идентификатор

Множ.

Тип

Описание

IBLOCK_TYPE

Нет

Список

Тип информационного блока

IBLOCK_ID

Нет

Список

ID информационного блока

IBLOCK_SECTION_CODE

Нет

Список

Код раздела (платформы)

COUNT

Нет

Число

Количество игр на странице

FILTER

Нет

Строка

Переменная фильтра

DETAIL_URL

Нет

Строка

Ссылка на детальное описание элемента

SORT_BY1

Нет

Список

Поле первой сортировки

SORT_ORDER1

Нет

Список

Направление первой сортировки

SORT_BY2

Нет

Список

Поле второй сортировки

SORT_ORDER2

Нет

Список

Направление второй сортировки


 

Шаблоны:

Идентификатор

Описание

.default

Основной шаблон


 

6.3.2. Компонент «Список новых и выходящих игр»

Имя компонента

games.calendar

Реализация требований

6, 7, 8


 

Логика работы:

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

Параметры компонента:

Идентификатор

Множ.

Тип

Описание

IBLOCK_TYPE

Нет

Список

Тип информационного блока

IBLOCK_ID

Нет

Список

ID информационного блока

IBLOCK_SECTION_CODE

Нет

Список

Код раздела (платформы)

COUNT

Нет

Число

Количество игр на странице

FILTER

Нет

Строка

Переменная фильтра

DETAIL_URL

Нет

Строка

Ссылка на детальное описание элемента

DATE_BORDER

Нет

Список

Ограничение вывода по дате

CURRENT_MONTH_DEFAULT

Нет

Флаг

Выводить поумолчанию игры текущего месяца

SORT_BY1

Нет

Список

Поле первой сортировки

SORT_ORDER1

Нет

Список

Направление первой сортировки

SORT_BY2

Нет

Список

Поле второй сортировки

Информация о работе Разработка информационного web-сайта на основе системы «1С-Битрикс: Управление сайтом»