При программировании в bitrix framework:

Самойлов А., Штепа А.  Южный федеральный университет. Россия Разработка web-приложений на базе Фреймворк Битрикс   В настоящее время растет количество приложений. Разрабатываемых с помощью веб-технологий. В первую очередь это связано с удобством использования таких приложений. Огромное количество задач можно выполнить, не прибегая к установке программного обеспечения, используя только браузер. С помощью интернет-технологий можно совершать покупки, общаться, работать, учиться. И это лишь малая часть видов деятельности, которые люди могут делать в Интернете.

Спрос рождает предложение. Поэтому с каждым днем число фирм застройщиков постоянно растет.

Растет и количество инструментов разработки. Некоторые инструменты позволяют ускорить работу программиста. А некоторые из них позволяют разрабатывать интернет-ресурсы в течение пары часов. Одним из таких инструментов разработки является Bitrix Framework.

Фреймворк Bitrix создан на базе PHP платформы для разработки веб-приложений. На этой платформе компания 1С-Битрикс создала два популярных продукта: «1С-Битрикс: Управление сайтом» и «1С-Битрикс: Корпоративный портал» [1]. В отличие от других фреймворков, таких как Zend Framework. Фреймворк Bitrix помимо набора классов имеет также разработанный интерфейс администрирования.

Как и во многих фреймворках и языках программирования, в Bitrix Framework есть база. Позволяющая лучше понять структуру и особенности платформы. Перед началом разработки пользователю необходимо изучить эту базу.

Прежде всего, разработчику необходимо знать  архитектуру системы. MVC (Model-view-controller,

Доминирующая роль в этом трио называется — От этой модели зависят и Модель принимает запросы (обычно от

Вторым по важности является контроллер. Он интерпретирует данные, поступающие от пользователя, и информирует модель и представление о необходимости реакции.

Третий компонент-представление. Его основная обязанность — отображение информации. С помощью этого компонента формируется пользовательский интерфейс.

В Bitrix Framework каждый из этих компонентов имеет свое имя (рис. 1). Модель-это API, ядро системы. Представление-это шаблоны. Контроллер — это компонент.

 

Рис. 1. Архитектура MVC для платформы Bitrix

 

Если обратиться к файловой структуре Bitrix Framework, то можно увидеть. Что каждый из всех веб-сайтов имеет множество одинаковых каталогов. На каждом веб-сайте, разработанном с помощью Bitrix Framework, в корне есть каталог Bitrix и upload.

Второй каталог предназначен для хранения файлов, на которые ссылается база данных. Этот каталог всегда должен быть защищен от запуска в нем каких-либо скриптов, иначе безопасность этого сайта может быть нарушена. Что касается первого каталога, то он включает в себя: полный список модулей (модели данных и API для доступа к этим данным). Компоненты (содержит контроллер и представление для использования в публичном разделе). Шаблоны (версии представления). А также администраторы разделов. Каталог с кэшем страниц. Файлы для управления событиями. Библиотеки javascript и многое другое.

Прежде всего необходимо обратить внимание на три основные папки: модули, компоненты и шаблоны.

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

Второй каталог содержит набор компонентов системы. Кстати, количество доступных компонентов и модулей зависит от версии системы. Компонентная структура, как было сказано ранее, включает в себя представление и контроллер.

Третий каталог содержит шаблоны сайта и компонентов.

Интерфейс административной части дает возможность управления для каждого из каталогов веб-сайта собственного представления. На первом уровне папки templates располагаются каталоги шаблонов веб-сайта. Каждый такой шаблон состоит из: файла шапки (header.php), файл погреба (footer.php), папка с языковыми файлами шаблона. Шаблоны компонентов. Используемых в этом шаблоне веб-сайта. А также файлы стилей. Библиотеки javascript и включенные области.

Теперь, когда стало немного понятно, какой структурой обладает Bitrix Framework, необходимо понять. Как развивается каждая страница сайта.

Например, index.php файл, который находится в корне. Если мы откроем эту страницу, то можно будет увидеть следующую структуру:

1) header.php соединение;

2) Рабочая область (подключение компонентов, включенных областей, html и php-код); 

3) footer.php связь.

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

Если понятна архитектура Фреймворка и процесс формирования страницы web-сайта. То можно перейти к структуре хранилища данных этой платформы. В Bitrix Framework данные хранятся в информационных блоках. Это следующий уровень абстракции по сравнению с обычными таблицами СУБД. В зависимости от сферы применения, ожидаемой загрузки, производительности и других факторов. Bitrix Framework может использовать либо MySQL. Либо Oracle. Вторая СУБД используется редко или никогда, как правило, на очень больших проектах. Первые СУБД, как и в других системах, построенных на основа PHP. Является самой популярной. Работая с информационными блоками, пользователь не заметит разницы между использованием той или иной СУБД. При проектировании интерфейс остается тем же.

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

Каждый информационный блок позволяет создавать неограниченное количество разделов, причем. Объем разделов также может быть неограниченным. А в разделах может быть неограниченное количество элементов.

Наибольший интерес представляет информационный блок – блок однородной информации. Он содержит некоторый набор атрибутов (базовые поля и свойства). Каждое свойство имеет тип и набор описывающих параметров.

Элемент информационного блока-это непосредственная информация. Хранящаяся в информационном блоке. Это может быть новость, товар или любой другой объект, обладающий свойствами, заданными в настройках информационного блока.

Добавление, редактирование, удаление, сбор данных – все эти функции применимы к элементу информационного блока или к функциям API. Например, необходимо применить функцию getList для организации выборки некоторого количества элементов. Давайте разберем эту функцию на примере:

CModule::IncludeModule(‘iblock’);

$rsItem = CIBlockElement::getList($arOrder, $arFilter. False, false. $arSelect);

{

echo ‘Object with id = ’.$arItem[‘ID’].’ And  name ’.$arItem[‘NAME’];

}

В данном примере в первую строку подключается модуль информационных блоков.

CI Block Element-это класс, отвечающий за работу с элементами информационного блока. $rsItem – результат выборки, переменная типа объекта. В массиве $arOrder задается сортировка выбранных элементов. В массиве $arFilter задаются параметры фильтрации пробы. Следующие два параметра (по умолчанию false) отвечают за параметры пагинальной навигации и группы. В массиве $arSelect полей и свойств. Которые он необходимо выбрать набор. Следующей строкой к средству оператора while идет последовательный вывод значений элементов. Метод GetNext () используется для преобразования объекта $rsItem в массив $arItem.

На основании вышеизложенного можно сделать вывод. Что использование фреймворка Bitrix для разработки веб-сайтов позволяет упростить работу программиста по проектированию структуры данных. Структуры веб-сайтов. Повысить временную производительность разработки. Уйти от частого использования повторяющихся веб-сайтов программы. В короткие сроки настроить кэширование. А в тандеме с интерфейсом административной части. Эта платформа позволит реализовать многие функции веб-сайта без наличия программирования навыки. Что касается сервиса. То компания 1С-Битрикс оказывает услуги технической поддержки. Против множества плюсов есть и минусы. Это однозначно неизбежная избыточность кода системы, в результате универсальности и многофункциональности системы, и конечно стоимость.

Ссылки:

1. Курс «Разработчик Bitrix Framework» [Электронный ресурс]:

Режим доступа: http://dev.1c-bitrix.ru/docs/pdf_files/dev_full.pdf

2. «Модель–вид–контроллер» [Электронный ресурс]:

Режим доступа: http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller