Исходя из данных, представленных в табл. 4.3, можно сделать вывод, что в настоящий момент подход Ajax является наиболее эффективным для реализации широкого круга задач, связанных с управлением контентом, а также с коммуникацией в сети Интернет.
КОНТРОЛЬНЫЕ ВОПРОСЫ
1.Что такое Web 1.0, Web 2.0, Web 3.0 и Web 4.0?
2.Приведите основные особенности этапа Web 1.0.
3.Назовите черты, характеризующие этап Web 2.0.
4.Перечислите составляющие элементы концепции Web 3.0.
5.Укажите основные отличия Web 3.0 от Web 4.0.
6.К какому этапу развития технологии Web относят подход Ajax?
7.По каким критериям можно сравнить этапы Web 1.0, Web 2.0, Web 3.0 и Web 4.0?
8.Что такое синдикация контента?
9.Что подразумевается под агрегатором потоков?
10.Перечислите преимущества использования канала RSS.
11.Какая технология является главным конкурентом RSS?
12.В каком документе описан протокол публикации Atom?
13.Приведите сравнение технологий Atom и RSS.
14.Как можно определить Ajax?
15.Какие технологии включает в себя Ajax?
16.Назовите два основных принципа Ajax.
17.Для чего служит объект XMLHttpRequest?
18.Что определяет свойство readyState?
19.Перечислите достоинства и недостатки Ajax.
20.Назовите web-приложения, использующие Ajax.
75
5. ВЫБОР ИНСТРУМЕНТОВ ДЛЯ СОЗДАНИЯ WEB-САЙТОВ
ИWEB-ПРИЛОЖЕНИЙ
5.1.ФРЕЙМВОРКИ: НАЗНАЧЕНИЕ,ТИПЫ,АРХИТЕКТУРА,
ПРЕИМУЩЕСТВА ИСПОЛЬЗОВАНИЯ
При проектировании и создании web-приложений высокой степени сложности предпочтительно использовать специализированные программные средства, которые значительно могут сократить временные и денежные затраты на разработку, а именно фреймворки. Класс таких инструментов, как фреймворки, подходит для решения задач автоматизации бизнес-процессов, создания минимальных демонстрационных образцов, сложных сайтов, сервисов, проверки идей и гипотез, поскольку фреймворки протестированы, выдерживают высокие нагрузки и являются низкоуровневыми инструментами (имеют базовый функционал, который можно дорабатывать и расширять).
Все фреймворки (другое наименование – программные каркасы) можно классифицировать на следующие виды: серверные, клиентские, многофункциональные фреймворки, а также системы управления контентом.
Работа серверных фреймворков осуществляется на сервере. Они позволяют управлять логикой данных, конфигурацией приложения, подсистемами и т. д. Серверные фреймворки обладают достаточно большим набором функций.
Основные функции серверных фреймворков:
•Организация системы пользователей. Фреймворк дает возможность развернуть систему для регистрации пользователей, их авторизации, подтверждения личных данных в профиле, редактирования профиля и назначения прав доступа. Разработчик настраивает систему под потребности конечных пользователей с учетом требований безопасности и защиты данных.
•Организация работы с базами данных. Благодаря фреймворку работа становится независимой от конкретной базы данных, что в свою оче-
76
редь допускает замену хранилища данных в случае необходимости. Таким образом, фреймворк выполняет функцию отображения информации из базы данных в объекты структуры данных. Функция выполняется благодаря подсистемам работы с определенной базой данных. Разработчиком создается подключение к базе и уточняются следующие параметры: IP-адрес, порт, вход в учетную запись (логин и пароль) и т. д.
•Навигация по страницам приложения. Функция фреймворка заключается в работе со значениями параметров запроса, организацией доступа
кфункции по запросу, переадресацией запроса.
•Организация защиты от атак Сross Site Request Forgery (тип такой атаки предполагает исполнение действий пользователя без участия самого пользователя). Чтобы противодействовать атакам, должен быть создан дополнительный ключ на текущую пользовательскую сессию. Благодаря фреймворкам формировать ключи вручную нет необходимости, поскольку фреймворк берет на себя данную функцию.
•Получение деталей запроса (метод, заголовки и т. д.). Реализация данной функции фреймворком обеспечивает доступ к заголовкам запроса и добавляет заголовки в ответ на запрос.
•Проверка правильности пользовательских запросов. Фреймворк
имеет как функцию проверки данных, вводимых пользователем, так и функцию уведомления о возникающих ошибках при вводе данных. Также фреймворк позволяет проводить обработку ошибок в части предоставления выводов и информации разработчикам.
•Учет логов в системе. Фреймворк дает возможность определить настройки сохранения записей, а также назначать триггеры сообщений (информирование, сигнал, ошибка и т. д.).
•Настройка языка интерфейса с учетом географического расположения. В зависимости от локации фреймворк идентифицирует переводные файлы, в наполнении которых указан как ключ, так и сам перевод к этому ключу.
77
•Тестирование приложения. Серверный фреймворк имеет встроенные механизмы тестирования, такие как протокольные и консольные тесты.
•Кеширование страниц. Фреймворк позволяет извлекать нужный контент из кеша, снижая нагрузку на сервер; как правило, таких механизмов кеширования у фреймворка несколько.
•Установка дополнительных модулей и библиотек. У каждого фреймворка есть плагины, направленные на доработку функциональности создаваемой системы, которую нельзя реализовать стандартными средствами фреймворка [5, с. 33–37].
Клиентские фреймворки предназначены для работы на клиентских станциях. Реализация клиентских фреймворков обычно осуществляется через JavaScript, поскольку JavaScript является основной web-технологией, используемой на стороне клиента. Клиентские фреймворки служат для оформления и создания пользовательских интерфейсов, поэтому располагают достаточным набором различных компонентов: кнопок, форм, выпадающих списков, текстовых полей, таблиц, средств для создания анимаций
иинтерактивных элементов и др. Также клиентские фреймворки содержат в своем составе необходимые библиотеки для написания front-end части приложения.
Базовые возможности клиентских фреймворков:
•Работа с открытым исходным кодом, благодаря которой повышается степень проработанности интерфейса.
•Наличие большого количества шаблонов, стилей, плагинов.
•Создание анимаций различного уровня сложности, постраничная адаптивная верстка макета приложения.
•Кроссплатформенность.
Поскольку клиентские фреймворки нацелены только на управление интерфейсами, они не формируют логики самого приложения.
Многофункциональные фреймворки охватывают широкий спектр задач: от управления интерфейсами до построения и определения правил
78
реализации логики приложения. Многофункциональные фреймворки включают функции как клиентских, так и серверных фреймворков и делятся на два подвида: фреймворки универсальных решений и микрофреймворки. Микрофреймворк позволяет реализовывать конкретные задачи; функциональность приложений, созданных на микрофреймворках, может быть расширена благодаря применению сторонних приложений.
Системы управления контентом (CMS-системы) являются специализированным видом, который относят к фреймворкам, и позволяют разрабатывать web-приложения, решающие типовые задачи, посредством применения готовых шаблонов [5, с. 32–33]. В первую очередь CMS-системы нацелены на управление внешним видом сайта, редактирование и публикацию материалов (более подробно такие системы будут рассмотрены в разделе 5.2).
Фреймворки реализовывают общепринятую архитектуру: Model – View – Controller, или MVC [22]. Суть архитектуры заключается в делении структуры приложения на составляющие: доступ и работа с данными, отображение данных и передача данных.
Компонент Model дает возможность настроить доступ к информации из базы данных, файлов, других сервисов. Компонент организовывает хранение всех данных, уровней логики и правил.
Компонент View отвечает за взаимодействие с пользователем. Компонент осуществляет отображение информации через различные шаблоны, экраны, формы, страницы. Благодаря компоненту View определяются внешний вид и дизайн приложения.
Компонент Controller обеспечивает взаимосвязь между компонентами Model и View, данное взаимодействие необходимо для передачи данных из хранилища в отображение. Задачей компонента Controller является проверка отклика сайта на действия пользователей. На рис. 5.1 представлена общая архитектура MVC.
79
CONTROLLER
MODEL |
VIEW |
Рис. 5.1. Архитектура MVC
Выбирая реализацию проекта на фреймворке, разработчик получает ряд следующих преимуществ:
1.Повышение скорости разработки. В силу того, что у фреймворка есть готовые модули и компоненты, временные затраты на реализацию стандартных задач значительно сокращаются в сравнении с реализацией, которая бы осуществлялась на чистом языке программирования.
2.Обеспечение высокого уровня надежности и безопасности. Фреймворки обладают высокой степенью защиты данных от таких угроз, как SQL-инъекции (атаки, направленные на внедрение в запрос SQL произвольного кода), XSS-атаки (воздействия, позволяющие внедрить на страницу клиента JavaScript-код), CSRF-атаки (атаки, приводящие к тому, что злоумышленник может выполнить на неподготовленном сайте различные действия от имени зарегистрированных пользователей сайта).
3.При использовании фреймворков бизнес-процессы достаточно хорошо проработаны, что дает возможность исключить появление ошибок
вбизнес-логике.
Несмотря на то, что у фреймворков есть явные достоинства, они имеют недостаток, который может повлиять на реализацию проекта: для того
80
чтобы реализовать нестандартный проект, необходимо подключать дополнительные модули и библиотеки, что требует знаний и навыков в сфере web-программирования. Соответственно, не во всех случаях работа
сфреймворком подойдет начинающему разработчику.
Взависимости от сферы применения и спектра задач можно выбрать тот фреймворк, который станет наиболее подходящим инструментом реализации проекта. Самые популярные фреймворки в 2022 году (по данным открытых источников [23]) приведены в табл. 5.1.
|
|
|
|
|
Таблица 5.1 |
|
|
|
Популярные фреймворки в 2022 году |
||||
|
|
|
|
|
|
|
№ |
Наименование |
Компания- |
|
Основные |
Сферы |
|
п/п |
фреймворка |
разработчик |
|
достоинства |
применения |
|
|
|
|
|
|
|
|
1 |
Laravel |
Тэйлор Отвел |
1. |
Легкое юнит- |
Банки, здравоохране- |
|
|
|
|
тестирование |
ние, электронная ком- |
|
|
|
|
|
2. |
Открытый исход- |
мерция, индустрия |
|
|
|
|
ный код |
развлечений; |
|
|
|
|
|
3. |
Высокая произво- |
|
|
|
|
|
дительность |
с участием фреймвор- |
|
|
|
|
|
4. |
Мощное сообще- |
ка разработан маркет- |
|
|
|
|
ство разработчиков |
плейс RentNow, плат- |
|
|
|
|
|
|
|
форма Wattpad |
|
|
|
|
|
|
|
|
2 |
Django |
Django |
1. |
Возможность мас- |
Работа с коммуника- |
|
|
|
Software |
штабирования |
ционными платфор- |
|
|
|
|
Foundation |
2. |
Мощный интерфейс |
мами, отельный биз- |
|
|
|
|
автоматического ад- |
нес (бронирование |
|
|
|
|
|
министрирования |
номеров), системы |
|
|
|
|
|
3. |
Многоязыковая |
управления докумен- |
|
|
|
|
поддержка |
тооборотом, алгорит- |
|
|
|
|
|
4. |
Большое количе- |
мические генераторы, |
|
|
|
|
ство нестандартных |
сфера машинного обу- |
|
|
|
|
|
библиотек |
чения; |
|
|
|
|
|
|
|
с участием фреймвор- |
|
|
|
|
|
|
ка создан видеохо- |
|
|
|
|
|
|
стинг YouTube |
|
|
|
|
|
|
|
|
81
|
|
|
|
|
Окончание табл. 5.1 |
|
|
|
|
|
|
|
|
№ |
Наименование |
Компания- |
|
Основные |
Сферы |
|
п/п |
фреймворка |
разработчик |
|
достоинства |
применения |
|
|
|
|
|
|
|
|
3 |
Flask |
Армин |
1. |
Предоставляет сер- |
Создание микросерви- |
|
|
|
Ронахер |
вер обработки |
сов; создание проек- |
|
|
|
|
|
2. |
Встроенная под- |
тов, которые работают |
|
|
|
|
держка модульного |
со статическим напол- |
|
|
|
|
|
тестирования |
нением; |
|
|
|
|
|
3. |
Поддержка без- |
|
|
|
|
|
опасных файлов |
с участием фреймвор- |
|
|
|
|
|
Cookie |
ка создан проект |
|
|
|
|
|
4. |
Совместим с WSGI |
Linkedln |
|
|
|
|
1.0 (стандартом взаи- |
|
|
|
|
|
|
модействия между |
|
|
|
|
|
|
Python и веб-сервером) |
|
|
|
|
|
|
|
|
|
|
4 |
ExpressJS |
TJ |
1. |
Ориентированность |
Создание проектов, |
|
|
|
Holowaychuk, |
на браузер |
где необходимо долго- |
|
|
|
|
StrongLoop |
2. |
Масштабируемость |
срочное сопровожде- |
|
|
|
|
3. |
Подключаемость |
ние; работа над проек- |
|
|
|
|
дополнительных мо- |
тами с кастомизацией; |
|
|
|
|
|
дулей |
|
|
|
|
|
|
4. |
Является составля- |
с участием фреймвор- |
|
|
|
|
ющей стека техноло- |
ка созданы проекты |
|
|
|
|
|
гий MEAN (техноло- |
Uber, IBM |
|
|
|
|
|
гии MongoDB, Angular |
|
|
|
|
|
|
и Node JS). Данный |
|
|
|
|
|
|
стек позволяет разра- |
|
|
|
|
|
|
батывать приложение |
|
|
|
|
|
|
«под ключ» |
|
|
|
|
|
|
|
|
|
|
5 |
Ruby on Rails |
Давид |
1. |
Легкая интеграция |
Разработка быстрых |
|
|
|
Хейнемейер |
с модулями других |
простых сайтов; раз- |
|
|
|
|
|
программ |
работка приложений |
|
|
|
|
|
2. |
Создание front-end |
со сложной бизнес- |
|
|
|
|
и back-end частей при- |
логикой; |
|
|
|
|
|
ложения |
|
|
|
|
|
|
3. |
Высокая степень |
с применением фрейм- |
|
|
|
|
организованности |
ворка разработан про- |
|
|
|
|
|
проекта |
ект GitHub |
|
|
|
|
|
|
|
|
|
82
При выборе фреймворка также следует обращать внимание на следующие характеристики:
1.Высокое качество сопроводительной документации. Сопроводительная документация включает в себя такие аспекты, как системные требования, описания архитектуры программного обеспечения, функционала, тест-кейсы, инструкции по обслуживанию, пользованию, запуску и др. Наличие качественной документации позволяет снизить риски, которые могут возникнуть на любом этапе ведения проекта.
2.Наличие активного сообщества пользователей и разработчиков.
Впроцессе освоения инструмента возникают проблемы, которые достаточно оперативно можно решить путем коммуникации с другими специалистами комьюнити.
3.Наличие оптимальной производственной среды. Каждый фреймворк имеет свои технические требования и требования к совместимости с другими программными средствами. Это необходимо учитывать при выборе инструмента для организации бесконфликтной работы с уже имеющимся программным и техническим окружением.
Таким образом, можно сделать вывод, что фреймворки в web-разработ- ке подходят для решения бизнес-задач различной степени сложности. С помощью фреймворков можно создавать приложения с нестандартным функционалом в силу высокой степени гибкости и производительности таких программных платформ. Для эффективной работы с фреймворком необходимо иметь углубленные знания в области web-программирования.
5.2.ОСНОВЫ ПРИМЕНЕНИЯ СИСТЕМ УПРАВЛЕНИЯ КОНТЕНТОМ.
СИСТЕМА «1С-БИТРИКС: УПРАВЛЕНИЕ САЙТОМ»
Системы для управления содержимым (Content management system, CMS) – это программные инструменты, предназначенные для создания сайта и работы с его информационным наполнением. К информационному наполнению сайта в данном случае следует отнести любые документы,
83
аудио- и видеофайлы, web-страницы, изображения и т. д. Отличительной чертой CMS считается то, что для организации работы с данным инструментом не требуется установка дополнительных программ.
Появлению систем управления контентом способствовала рутинная работа, связанная с написанием сайтов для решения шаблонных задач посредством чистых языков программирования, что приводило к неоправданным временным затратам на разработку типовых сайтов компаний. Студии, специализировавшиеся на разработке сайтов, начали создавать свои средства, которые позволяли значительно упростить реализацию стандартных задач (например, таких как работа с заказами). Также в сети Интернет публиковались бесплатные системы по созданию сайтов. В то же время у заказчиков возникали потребности в самостоятельном управлении контентом. Впоследствии стала приобретать популярность профессия контентменеджера – специалиста, занимающегося наполнением сайта любого рода информацией. Все вышеперечисленное привело к тому, что сегодня на рынке web-технологий есть различные CMS-системы, благодаря которым можно разрабатывать и тестировать как простые лендинги (одностраничные сайты), так и крупные типовые интернет-магазины и порталы.
Несмотря на то, что сейчас существует множество систем управления контентом, каждая из которых имеет специальный функционал для решения тех или иных задач, следует выделить ряд общих функций таких систем:
1.Взаимодействие с базами данных – обязательная функция любой CMS, поскольку представление контента всегда динамическое; благодаря базе данных возможна правильная и оптимальная структуризация больших объемов информации разрабатываемого web-проекта.
2.Управление данными сайта – добавление, модификация, удаление информации.
3.Использование визуального редактора, реализованного по принци-
пу WYSIWYG (What You See Is What You Get, «что видишь, то и полу-
чишь»). Визуальные редакторы WYSIWYG обычно похожи на текстовый
84
редактор MS Word; данная особенность позволяет облегчить работу
сCMS пользователям, не имеющим опыта в web-разработке.
4.Управление правами доступа – разграничение доступа для разных ключевых пользователей web-проекта.
5.Интеграция с различными информационными системами.
6.Расширение посредством добавления дополнительных компонен-
тов [2, с. 6–7].
Для систем управления содержимым можно выделить следующие свойства, а именно:
•масштабируемость (способность адаптации системы к вновь возникающим обстоятельствам);
•гибкость (способность системы поддерживать любую структуру сайта и бизнес-процессы компании);
•наличие удобного интерфейса и быстрая адаптация дизайна под потребности компании;
•защита данных (защищенность от взломов и утечек данных);
•резервное копирование (сохранение резервных копий системы);
•мультиплатформенность (способность системы работать на разных аппаратных и программных компонентах) [2, с. 7].
Системы управления содержимым можно разделить на системы с закрытым кодом и системы с открытым кодом. CMS с закрытым кодом являются проприетарными цифровыми продуктами. Работа с такими системами имеет как преимущества, так и недостатки. К преимуществам систем с закрытым кодом относят:
1. Более высокую степень безопасности и защиты данных в сравнении с системами с открытым кодом.
2. Дополнительную техническую поддержку со стороны производителя.
3. Ответственность производителя за возникающие ошибки работы компонентов системы.
85
Недостатки систем с закрытым кодом:
1.Высокая стоимость в сравнении со стоимостью систем с открытым
кодом.
2.Невозможность самостоятельного изменения кода заказчиком.
3.Ограниченное число лицензий (в ряде случаев необходимо приобретать дополнительные пользовательские лицензии, что влечет за собой затраты).
CMS с открытым кодом можно скачивать бесплатно, исходный код является свободно распространяемым. Системы управления содержимым
соткрытым кодом имеют ряд достоинств, а именно:
1.Развитие системы поддерживается запросами сообщества, а не производителем, что влечет более долгосрочные перспективы существования продукта.
2.Существует возможность самостоятельного изменения кода под нужды заказчика.
3.Продукт имеет низкую стоимость (чаще – бесплатное распространение).
Недостатки систем с открытым кодом:
1.Низкая степень защиты данных.
2.Риск несоблюдения требований лицензий.
3.Самостоятельный поиск решений большинства проблем, связанных с отладкой системы, через сообщество, форумы и т. д.
В связи с необходимостью создания единой информационной среды и разработкой единых стандартов и регламентов были созданы организации, объединяющие разработчиков и пользователей CMS. Такими органи-
зациями являются ассоциации OSCOM (Open Source Content Management)
и CMSWatch [24]. Ассоциация OSCOM определила и утвердила стандарты WebDav, RSS, Atom. Ассоциация CMSWatch каждый год публикует от-
86
четность с обзором рынка систем управления содержимым, их сравнительный анализ, подробное описание стадий жизненного цикла контента.
Системы управления содержимым можно классифицировать в части представления данных [24]:
1.Системы управления контентом, основанные на объектной модели. Объектная модель данных строится на таких понятиях, как объекты и классы. CMS-системы, основанные на объектной модели, хранят данные в реляционной или объектной базе данных. Такие системы обладают высокой степенью гибкости, в то же время являются наиболее сложными в освоении.
2.Системы управления контентом, основанные на сетевой модели. Суть сетевой модели заключается в том, что информация в рамках этой модели группируется узлами. Базисом системы управления контентом, реализованной на сетевой модели, является или сетевая, или реляционная СУБД, на которой отображается сетевая модель данных. Подобная реализация позволяет работать с большими объемами данных.
3.Системы управления контентом, основанные на модульной модели. В таких системах наполнение разделено на модули по типам. К типам контента можно отнести ссылки, файлы, форумы, статьи и др. Модули автономны, вся работа с материалами происходит также внутри модуля. Благодаря добавлению новых и изменению существующих модулей появляется возможность расширения функциональности системы.
При выборе системы управления контентом следует учитывать следующие параметры: категория заказчика и специфика поставленной задачи, технические особенности и совместимость, типы контента, наличие возможности создания групп пользователей, модель представления дан-
ных, возможность разметки, поддержка русского языка. Популярные в 2022 году (по данным открытых источников [25]) CMS-системы представлены в табл. 5.2 в разрезе некоторых приведенных выше параметров.
87
|
|
|
|
|
|
Таблица 5.2 |
|
|
Популярные CMS-системы |
|
|
||
|
|
|
|
|
|
|
№ |
Наимено- |
Технические особенно- |
Модель пред- |
|
Достоинства |
Недостатки |
п/п |
вание CMS |
сти и совместимость |
ставления |
|
|
|
|
|
|
данных; |
|
|
|
|
|
|
поддержка |
|
|
|
|
|
|
языков |
|
|
|
|
|
|
|
|
|
|
1 |
1С- |
1. Базы данных |
Модель: |
|
• Наличие ма- |
• Избыточ- |
|
Битрикс: |
MySQL, MS SQL, |
объектная, |
|
газина готовых |
ность кода |
|
Управле- |
Oracle |
модульная. |
|
решений |
• Требова- |
|
ние сайтом |
2. Веб-серверы Apache, |
Языки: более |
|
• Наличие |
тельность |
|
|
IIS |
10, включая |
|
специального |
к ресурсам |
|
|
3. Языки программи- |
русский, |
|
модуля «Поис- |
• Высокая |
|
|
рования ASP.NET, PHP |
украинский, |
|
ковая оптими- |
стоимость |
|
|
4. Совместимость |
английский |
|
зация» для |
|
|
|
с Roistat, Carrot quest, |
|
|
продвижения |
|
|
|
Битрикс24, Мегаплан, |
|
|
сайтов |
|
|
|
Планфикс, МойСклад, |
|
|
• Наличие |
|
|
|
amoCRM, 1C: Пред- |
|
|
специального |
|
|
|
приятие, Робокасса |
|
|
модуля «Про- |
|
|
|
и т. д. |
|
|
активная защи- |
|
|
|
|
|
|
та» для обеспе- |
|
|
|
|
|
|
чения защиты |
|
|
|
|
|
|
данных |
|
|
|
|
|
|
|
|
2 |
WordPress |
1. Базы данных |
Модель: |
|
• Свободное |
• Низкая |
|
|
MySQL, MariaDB |
объектная, |
|
распростране- |
степень за- |
|
|
2. Веб-серверы Apache |
модульная. |
|
ние |
щиты дан- |
|
|
3. Язык программиро- |
Языки: |
|
• Простота |
ных |
|
|
вания PHP |
19 языков, |
|
в настройке |
• Сбои |
|
|
4. Совместимость |
включая рус- |
|
• Простота |
в автомати- |
|
|
с Google Analytics, |
ский, англий- |
|
в администри- |
ческом об- |
|
|
Unisender, социальны- |
ский, испан- |
|
ровании |
новлении |
|
|
ми сетями, МойСклад, |
ский |
|
|
|
|
|
СДЭК, Roistat, Бит- |
|
|
|
|
|
|
рикс24, Carrot quest |
|
|
|
|
|
|
и т. д. |
|
|
|
|
|
|
|
|
|
|
|
88
Окончание табл. 5.2
№ |
Наимено- |
Технические особенно- |
Модель пред- |
Достоинства |
Недостатки |
|
п/п |
вание |
|
сти и совместимость |
ставления |
|
|
|
CMS |
|
|
данных; |
|
|
|
|
|
|
поддержка |
|
|
|
|
|
|
языков |
|
|
3 |
Joomla! |
1. Базы данных MySQL, |
Модель: |
• Свобод- |
• Сложная |
|
|
|
MS SQL, PostgreSQL |
объектная, |
ное распро- |
панель управ- |
|
|
|
2. |
Веб-серверы Apache, |
модульная. |
странение |
ления |
|
|
IIS, Nginx |
Языки: по |
• Простота |
• Избыточ- |
|
|
|
3. |
Язык программиро- |
умолчанию |
в настройке |
ность кода |
|
|
вания PHP |
английский |
|
• Низкая сте- |
|
|
|
4. |
Совместимость с Re- |
с возможно- |
|
пень защиты |
|
|
tailCRM, Битрикс24, |
стью устано- |
|
данных |
|
|
|
amoCRM, МойСклад, |
вить русский |
|
|
|
|
|
1С: Предприятие, Робо- |
язык |
|
|
|
|
|
касса, Carrot quest |
|
|
|
|
|
|
и т. д. |
|
|
|
|
4 |
MODx |
1. Базы данных MySQL |
Модель: |
• Контроль |
• Низкая сте- |
|
|
|
2. |
Веб-серверы Apache, |
объектная. |
над выводом |
пень защиты |
|
|
IIS |
Языки: ан- |
кода |
данных |
|
|
|
3. |
Язык программиро- |
глийский по |
• Низкие |
• Специфиче- |
|
|
вания PHP |
умолчанию |
требования |
ская термино- |
|
|
|
4. |
Совместимость |
с возможно- |
к хостингу |
логия |
|
|
с Carrot quest, Бит- |
стью пере- |
|
• Мало ин- |
|
|
|
рикс24, amoCRM, |
ключения на |
|
формации |
|
|
|
Планфикс, 1С: Пред- |
русский язык |
|
в открытых |
|
|
|
приятие, Робокасса |
|
|
источниках по |
|
|
|
|
|
|
|
устранению |
|
|
|
|
|
|
ошибок |
|
|
|
|
|
|
|
5 |
OpenCart |
1. Базы данных MySQL |
Модель: |
• Встроен- |
• Медленное |
|
|
|
2. |
Веб-серверы Apache, |
модульная. |
ная система |
развитие си- |
|
|
IIS, Nginx |
Языки: под- |
аналитики |
стемы |
|
|
|
3. |
Язык программиро- |
держка рус- |
• Простота |
• Низкая сте- |
|
|
вания PHP |
ского, ан- |
в настройке |
пень защиты |
|
|
|
4. |
Совместимость |
глийского |
и установке |
данных |
|
|
с Google Analytics, Car- |
языков |
|
• Сбои |
|
|
|
rot quest, Roistat, План- |
|
|
в автоматиче- |
|
|
|
фикс, amoCRM, |
|
|
ском обновле- |
|
|
|
Битрикс24, Telegram, |
|
|
нии |
|
|
|
Робокасса, |
|
|
|
|
|
|
Яндекс.Доставка |
|
|
|
|
89
Всилу действия политики по импортозамещению из представленных
втабл. 5.2 систем управления контентом более подробно следует остановиться на системе «1С-Битрикс: Управление сайтом».
Система «1С-Битрикс: Управление сайтом» является универсальной коммерческой системой, благодаря которой можно создавать и поддерживать разные по сложности web-проекты. Система «1С-Битрикс: Управление сайтом» позволяет обучаться как на демоверсии, так и посредством онлайн-демолаборатории. Недостаток онлайн-демолаборатории заключается в ограничении по времени работы с сайтом (три часа). Через три часа после активации сайт удаляется автоматически [26].
Существует несколько способов установки демоверсии «1С-Битрикс: Управление сайтом»:
1) на виртуальную машину (HyperV, OVA, VirtualBox);
2) на хостинг скрипта BitrixSetup;
3) посредством дистрибутива для PHP [26].
Преимущественно для установки демоверсии используется первый способ установки системы как наиболее простой.
Система «1С-Битрикс: Управление сайтом» включает в себя две составляющие: публичный раздел и административный раздел. Публичный
раздел – это часть системы, доступная даже обычным пользователям в случае наличия у них определенных прав доступа. При наличии прав доступа в публичном разделе осуществляются работы, связанные с добавлением, удалением и редактированием контента. Панель управления позволяет работать в режиме правок, то есть осуществлять изменение сайта непосредственно на самих страницах (без перехода в режим визуального редактора). Панель управления представлена на рис. 5.2.
Рис. 5.2. Панель управления системы «1С-Битрикс: Управление сайтом»
90
Административный раздел является частью системы, содержащей панель управления модулями системы, структурой, посетителями и т. д. В административном разделе также можно выделить информационные блоки, файловую систему, базу данных. Внешний вид административного раздела приведен на рис. 5.3.
Рис. 5.3. Административный раздел системы «1С-Битрикс: Управление сайтом»
Сайт, созданный посредством системы «1С-Битрикс: Управление сайтом», имеет как физическую, так и логическую структуру. Логическая структура отображает группировку страниц и разделов по смыслу; физическая структура отвечает за расположение папок и файлов на сервере.
Управление структурой включает в себя:
1)инструмент «Структура» (при работе из публичного раздела для изменения логической структуры сайта);
2)инструмент «Менеджер файлов» (при работе из административного раздела с файлами и папками);
3)навигацию, а именно меню, карту сайта и навигационную цепочку;
4)медиабиблиотеку – инструмент для управления видео-, фотоизображениями и т. д.
Через управление структурой можно настроить визуальный редактор. Визуальный редактор системы «1С-Битрикс: Управление сайтом» позволяет работать с различными визуальными компонентами, а именно опре-
91
делять их внешний вид, настраивать параметры, размещать на страницах и т. д. Визуальный редактор является базовым функционалом, не требует установки и совместим с большинством современных браузеров.
Также в системе «1С-Битрикс: Управление сайтом» доступны следующие компоненты и функции, позволяющие запускать объемные webпроекты:
•Обработка адресов (используется для того, чтобы скрипт мог отвечать по любому указанному адресу).
•Система рейтингов (отражает активность пользователей с точки зрения ценности наполнения сайта).
•Агенты (запускают скрипты и функции с заданной периодично-
стью).
•Оптимизация использования места на хостинге (контроль занимаемого пространства).
•Создание групп и типовых ролей пользователей, контроль «слабых» паролей, контроль изменений в системе.
•Проверка и оптимизация базы данных (используется для оперативного восстановления работы сайта).
•Мониторинг качества (применятся для проверки качества проекта перед передачей заказчику).
•Автоматическое обновление функционала, связанного с исполнением требований законодательства Российской Федерации.
Системы управления контентом применяются в большей степени для решения типовых задач. Проектом, созданным посредством системы управления контентом, может быть как масштабный портал, так и стандартный интернет-магазин. Систему управления контентом не следует выбирать в качестве инструмента разработки в случае, если разрабатываемый цифровой продукт нацелен на реализацию нетиповых бизнеспроцессов или же имеет высокие требования к нагрузке (для подобных целей предпочтительнее использовать фреймворки).
92
5.3.ОНЛАЙН-КОНСТРУКТОРЫ САЙТОВ: ОСОБЕННОСТИ, ПРЕИМУЩЕСТВА И НЕДОСТАТКИ ПРИМЕНЕНИЯ
В современной литературе зачастую не проводится четкая граница между понятиями «онлайн-конструктор сайтов» и «система управления контентом», поскольку некоторые конструкторы по мере расширения функционала становятся системами управления контентом. Тем не менее конструкторы сайтов следует выделить в отдельную категорию инструментов для разработки, поскольку для создания сайта посредством такого инструмента не требуются знания и навыки в области верстки, дизайна
иweb-программирования, что, в свою очередь, накладывает и жесткие ограничения на реализацию, в отличие от реализации при помощи систем управления контентом.
Онлайн-конструкторы сайтов применимы для следующих типов сайтов:
1.Сайты-визитки – небольшие сайты, нацеленные на представление компании и содержащие краткую информацию об оказываемых услугах
иконтактах для связи.
2. Блоги – платформы для публикации обзоров, статей, новостей
свозможностью обсуждения.
3.Портфолио – сайты, предназначенные для демонстрации работ
идостижений.
4.Лендинги – одностраничные сайты, направленные на продвижение продукта или услуги и имеющие, как правило, одну или несколько кнопок целевых действий (главных активностей, которые должны быть совершены пользователями).
5.Сайты мероприятий – страницы для анонсирования различных мероприятий с информацией о месте проведения, спикерах, а также с формой регистрации участников.
Среди особенностей онлайн-конструкторов следует выделить:
• наличие автоматического генератора страниц;
93
•наличие визуального редактора, реализованного по принципу
WYSIWYG;
•наличие абсолютно готовых к применению шаблонов дизайнов.
К достоинствам онлайн-конструкторов относятся:
1.Реализация технологии drag-and-drop, которая позволяет в режиме простого редактирования управлять компонентами выбранного шаблона сайта.
2.Скорость разработки. Благодаря готовым шаблонам процессы создания и запуска сайта выполняются с меньшими временными затратами.
Несмотря на то, что онлайн-конструкторы сайтов предлагают готовые решения, для реализации масштабных web-проектов такие инструменты использовать не следует, поскольку они имеют ряд существенных недостатков, а именно:
1.Сложность переноса сайта на произвольный хостинг.
2.Принадлежность полных прав на созданный сайт производителю конструктора, а не тому, кто разрабатывал сайт.
3.Ограниченное место для хранения данных.
4.Ограничения в продвижении и оптимизации сайта.
5.Присваивание доменов третьего уровня, что сдерживает повышение целевого трафика.
6.Жесткие ограничения в части настройки дизайна, функционала
имасштабирования проекта.
7.Высокая стоимость подписки.
8.Низкий уровень защиты персональных данных [27].
Исходя из приведенных выше достоинств и недостатков конструкторов можно сделать вывод, что при выборе онлайн-конструктора следует обращать внимание на такие характеристики, как возможность переноса на другой хостинг, возможность встраивания собственного программного кода, ограничение дискового пространства в бесплатной версии, наличие оперативной поддержки, ограничение пробного периода.
94
В табл. 5.3 рассмотрены популярные онлайн-конструкторы в разрезе перечисленных характеристик.
|
|
|
|
|
|
Таблица 5.3 |
|
Сравнительная характеристика онлайн-конструкторов |
|||||
|
|
|
|
|
|
|
№ п/п |
Наименование онлайнконструктора |
Возможность переноса на другой хостинг |
Возможность встраивания кода |
Пробный период |
Наличие оперативной поддержки |
Ограничение дискового пространства в бесплатной версии |
|
|
|
|
|
|
|
1 |
Wix |
Возможен |
Да |
До 30 дней |
Да |
Да |
|
|
только |
|
|
|
|
|
|
в льготный |
|
|
|
|
|
|
период |
|
|
|
|
2 |
uKit |
Нет |
Только |
До 14 дней |
Да |
Нет |
|
|
|
на платном |
|
|
|
|
|
|
тарифе |
|
|
|
3 |
Tilda |
Да |
Только |
До 14 дней |
Да |
Нет, но |
|
|
|
на платном |
|
|
на платных |
|
|
|
тарифе |
|
|
тарифах |
4 |
Jimdo |
Нет |
Только |
До 7 дней |
Да |
Нет, но |
|
|
|
на платном |
|
|
на платных |
|
|
|
тарифе |
|
|
тарифах |
В настоящий момент, по данным открытых источников [28], наиболее востребованным конструктором является отечественный инструмент Tilda, поскольку он использует Zero-блок, регулярно обновляется и наиболее гибок к изменениям в сравнении с другими конструкторами. Некоторые источники относят инструмент Tilda к категории систем управления контентом. Тем не менее функциональные нетиповые webпроекты, требующие индивидуальных настроек, на конструкторах сайтов реализовывать нецелесообразно в силу достаточно жестких ограничений. В таких случаях рекомендуется использовать системы управления контентом или фреймворки.
95
