Создание сайта | Методы создания сайта | Курсовая работа |

Курсовая работа «Современные методы создания сайтов»

Web-сайт. Создание сайта. Методы создания сайта. Web-страница. CMS WordPress. Язык HTML.

Оглавление

Введение

1. Язык программирования HTML и его история

2. Web-страницы

3. Современные методы создания сайтов

4. Практика

Заключение

Список использованной литературы

  Введение

Актуальность темы. Современный мир вступил в эпоху информационного общества. Основой, «кирпичами» этого общества является веб. И сейчас существование практически любой организации во многом зависит от того, насколько деятельность организации знакома широким слоям населения. Если раньше для того, чтобы познакомить потребителей с компанией было достаточно наличия офиса и телефона, а также электронной почты, то сейчас к этим средствам прибавляется еще одно — веб-сайт.

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

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

Целью работы является изучение современных методов создания сайтов.

Исходя из вышеописанной цели составим следующие задачи:

  • изучить язык программирования HTML;
  • указать особенности создания веб-страниц;
  • проанализировать современные методы создания сайтов;
  • изучить внутреннее строение CMS WordPress.

Объект работы: современные технологии создания сайтов.

Предмет работы: исходный код веб-страниц.

1. Язык программирования HTML и его история

Язык гипертекстовой разметки HTML (HyperText Markup Language) был предложен Тимом Бернерсом-Ли в 1989 году в качестве одного из компонентов технологии разработки распределенной гипертекстовой системы World Wide Web.

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

По сравнению с версией 2.0, HTML 3.2 позволяет реализовать отображение таблиц (контейнер), выполнение мобильных кодов, обтекание графики текстом, а также отображение верхних и нижних индексов. Кроме этих возможностей, которые фиксируют текущую практику использования HTML, современные программы просмотра HTML — документов позволяют реализовать и ряд других возможностей разметки текста, которые описаны в стандарте HTML 3.0 и расширениях HTML фирм-разработчиков программного обеспечения: *.

Разметка математических формул (HTML 3.0); * дополнительные контейнеры заголовка (HTML 3.0; Netscape Extensions; Microsoft Extensions); * дополнительные атрибуты стандартных контейнеров тела документа (ALIGN; BGCOLOR; TARGET и т.п.); * разбиение страницы на фреймы; * открытие дополнительных окон и др.

HTML 4.0 — кроме возможностей разметки текста, включения мультимедиа и формирования гипертекстовых связей уже существовавших в предыдущих версиях HTML, в версию 4.0 включены дополнительные средства работы с мультимедиа, языки программирования, таблицы стилей, упрощенные средства печати изображений и документов, которые становятся более доступными для всех пользователей HTML 4.0.

Эти дополнения служат интернационализации WWW и распространению ее по всему миру. Кроме этого, для управления сценариями просмотра страниц Website (гипертекстовой базы данных, выполненной в технологии World Wide Web) можно использовать языки программирования этих сценариев типа JavaScript, Java и VBScript.

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

Язык разметки гипертекста (HyperText Markup Language — HTML) можно использовать для представления:

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

Данные в формате HTML похожи на текстовой файл, за исключением того, что некоторые из символов интерпретируются как разметка. Разметка придает документу некую структуру [6].

Сам по себе HTML-документ представляет собой текстовый файл, содержащий набор инструкций для представления информации в требуемом виде в окне браузера. Инструкции записываются в виде тегов (читается тэг, от англ. tag) и имеют следующий синтаксис:

<имя_тега [возможные параметры]>

Чтобы указать браузеру место окончания действия того или иного тега, используется закрывающий тег. Это тег, имеющий то же самое имя с прямым слешем ‘/’ перед ним/

<html>

HTML-документ

</html>

Следует отметить, что не каждый открывающий тег должен иметь соответствующий закрывающий. Имеется набор тегов, действие которых начинается и заканчивается одним открывающим тегом:

<img src=»image.gif»> — тег для вывода изображения image.gif в окно браузера;

<input type=»text» value=»»> — тег для ввода значений в окне браузера.

Из приведенных выше примеров записи тегов можно заметить, что существуют теги, содержащие в себе информацию (а также другие теги), например, html и body, которые в дальнейшем будем называть тегами- контейнерами. Соответственно информацию, содержащуюся в них — содержимым тега-контейнера.

Как и в любом языке программирования, язык HTML имеет теги для создания комментариев внутри документа, т.е. текст, который имеется в документе, но не выводится браузером на экран. Для создания комментариев используется следующая пара тегов:

<!— Это комментарий —>

Имеется ряд тегов, для которых завершающие теги опускаются большинством авторов документов. Например, тег <p> (начало абзаца), как правило, не имеет в документе завершающего тега </p>. Его завершение определяется браузером по «ходу» документа, например, если встретится очередной открывающий тег <p>.

Существуют общие правила интерпретации тегов браузерами. В отличие от языков программирования, в которых ошибочные операторы приводят к соответствующим ошибкам, в HTML не принято реагировать на неверную запись тегов. Неверно записанный тег или его параметр должен просто игнорироваться браузером. Это общее правило для всех браузеров, под действие которых попадают не только ошибочные теги, но и теги, не распознанные данной версией браузера [6].

При создании HTML-документов рекомендуется соблюдать следующую структуру:

html>

<head>

<!— Раздел заголовка —>

</head>

<body>

<!— Тело документа —>

</body>

</html>

Здесь <html> — это тег, обозначающий начало HTML-документа. Браузер, встретивший данный тег, будет «знать», что представленную ниже информацию следует интерпретировать как HTML-страницу. Тег <head> означает раздел заголовка, который обычно включает (рис. 9):

1.      Заголовок страницы

<title>Интернет-портал «Спортлайф»</title>

2.      Кодировку, в которой представлен HTML-документ

<meta charset=»utf-8″>

3.      Краткое описание содержания документа

<meta name=»description» content=»Интернет-портал о спорта SportLife» />

4.      Список ключевых слов документа

<meta name=»keywords» content=»интернет-портал о спорте, SportLife, футбол, хоккей, новости спорта «>

5.      Внешние таблицы стилей (css) для форматирования документа

<link href=»css/bootstrap.min.css» rel=»stylesheet» />

<link href=»css/fancybox/jquery.fancybox.css» rel=»stylesheet»>

<link href=»css/jcarousel.css» rel=»stylesheet» />

<link href=»css/flexslider.css» rel=»stylesheet» />

<link href=»css/style.css» rel=»stylesheet» />

При разработке HTML-страницы крайне не рекомендуется пропускать <head></head> и его «минимальная конфигурация» может иметь следующий вид:

<head>

<meta charset=»utf-8″>

<title>Интернет-портал «Спортлайф»</title>

<meta name=»viewport» content=»width=device-width, initial-scale=1.0″ />

<meta name=»description» content=»Интернет-портал о спорте SportLife» />

<meta name=»keywords» content=»интернет-портал о спорте, SportLife, футбол, хоккей, новости спорта «>

<link href=»css/bootstrap.min.css» rel=»stylesheet» />

<link href=»css/fancybox/jquery.fancybox.css» rel=»stylesheet»>

<link href=»css/jcarousel.css» rel=»stylesheet» />

<link href=»css/flexslider.css» rel=»stylesheet» />

<link href=»css/style.css» rel=»stylesheet» />

<link href=»skins/default.css» rel=»stylesheet» />

</head>

Структура блока head
Рисунок 1 – Структура блока head

В тегах <body>…</body> заключается отображаемая информация (тело) страницы: текст, изображения, таблицы, звук, видео, объекты (например, flash-проигрыватель), javascript-программы, таблицы стилей (css) и т.д.

В конце тела страницы также нужно размещать подключаемые внешние javascript файлы (скрипты) (рис. 10), это ускоряет загрузку страницы, в сравнении, если эти скрипты подключаются в средине блока <head></head>.

<script src=»js/jquery.js»></script>

<script src=»js/jquery.easing.1.3.js»></script>

<script src=»js/bootstrap.min.js»></script>

<script src=»js/jquery.fancybox.pack.js»></script>

<script src=»js/jquery.fancybox-media.js»></script>

<script src=»js/google-code-prettify/prettify.js»></script>

<script src=»js/portfolio/jquery.quicksand.js»></script>

<script src=»js/portfolio/setting.js»></script>

<script src=»js/jquery.flexslider.js»></script>

<script src=»js/animate.js»></script>

<script src=»js/custom.js»></script>

Подключение скриптов в конце блока body
Рисунок 2 – Подключение скриптов в конце блока body

HTML-документ рекомендуется всегда завершать закрывающим тегом </html> и тем самым сигнализировать браузеру о завершении документа. Это полезная информация может быть использована, например, при обрыве связи во время загрузки страницы. Тогда отсутствие тега </html> может означать неполную загрузку страницы. На практике встречается и много других случаев, когда важно иметь корректную разметку страницы для исключения неверного отображения содержания документа в исключительных ситуациях [6].

Текст HTML-документа, как правило, представляет собой непосредственно текст и ссылки, ведущие либо на отдельные фрагменты того же документа, либо на другие документы.

2. Web-страницы

Web-страницы — это документы в формате HTML, содержащие текст и специальные тэги (дескрипторы) HTML. По большому счету тэги HTML необходимы для форматирования текста (т.е. придания ему нужного вида), который «понимает» браузер. Документы HTML хранятся в виде файлов с расширением .htm или .html.

Веб-страницы можно набрать в любом текстовом редакторе. В этом случае абсолютно все надо набирать своими ручками. Основной плюс такого метода — код получается абсолютно минимизированным, т.е. «вес» такой html- страницы будет минимальным. К недостаткам следует отнести тот факт, что пользователь должен очень хорошо знать язык html-разметки, да и результаты своего труда нельзя будет сразу посмотреть. Поэтому таким методом создания Веб-страниц практически никто не пользуется. Порекомендовать его можно разве что для создания простеньких Веб-страничек если нет возможности использования специализированных программ [11].

Веб-дизайнеры используют специальные программы, которые называются HTML-редакторы. Функционал редакторов веб-страниц можно рассмотреть на популярной программе Atom.

Atom — это бесплатный текстовый редактор с открытым исходным кодом для разные операционных систем (OS X, Linux, Windows) с поддержкой плагинов, написанных на Node.js, и встраиваемых под управлением Git Control. Большинство плагинов имеют статус свободного программного обеспечения, разрабатываются и поддерживаются сообществом. Сайт программы — https://atom.io/ (рис. 3).

Официальный сайт редактора Atom
Рисунок 3 — Официальный сайт редактора Atom

Atom — это программа для редактирования текста и программного кода с максимально привычнымдля разработчиков интерфейсом (рис. 3.2). Она умеет работать практически со всеми распространенными кодировками и форматами текстовых файлов, а также включает в себя функцию подсветки синтаксиса. При желании Atom можно вполне успешно использовать в качестве менеджера файлов. Встроенный «обзорщик» позволяет легко переключаться между файлами и папками, перемещать текстовые документы «по одиночке» и массово, а также комфортно просматривать структуру директорий древовидным списком [11].

Как и большинство других современных текстовых редакторов, Atom открывает новые файлы в отдельных вкладках, работая по принципу веб-браузера. Благодаря этому пользователь может легко копировать и перемещать информацию между документами. Открытые вкладки программа запоминает при закрытии, если эту функция не отключена в настройках. По умолчанию редактор использует тему оформления в темных и тусклых тонах. Темный фон не «режет» глаза при работе в темноте, а также снижает утомляемость. Обычно подобное оформление графической оболочки используется в «ночных режимах», которыми принято снабжать различные текстовые редакторы и программы для чтения.

Рабочее окно программы Atom
Рисунок 4 — Рабочее окно программы Atom

Atom — полностью бесплатная программа. Редактор является превосходным инструментом для разработчиков, копирайтеров и тем, кому функционала стандартного «Блокнота» Windows недостаточно.

Ключевые особенности и функции редактора Atom:

  • включает в себя удобный файловый менеджер с возможностью просмотра древовидным список;
  • содержит функцию подсветки синтаксиса;
  • поддерживает массовое выделению и работу с несколькими курсорами;
  • работает практически со всеми существующими кодировками и форматами текстовых файлов;
  • является совершенно бесплатным;
  • возможна установка множества плагинов, которые значительно расширяют функционал редактора, превращая его в мощный инструмент разработки [11].

Для просмотра веб-страниц используются веб-обозреватели.

Браузер — программа, предназначенная для просмотра гипертекстовых документов. К основным функциональным возможностям браузеров относятся:

  • отражение текстовой информации веб-страницы, а также воспроизведение звука, анимации, видео;
  • переход между веб-страницами путём использования гиперссылок;
  • поиск веб-страниц по заданным ключевым словам или фразам;
  • автоматическое создание перечня веб-узлов, посещённых ранее, для ускорения доступа к ним;
  • отображение активных компонентов; эти объекты содержат не только данные, но и программный код; активные компоненты при отображении на экране производят работу в соответствии со встроенной программой. Браузеры развивались со времён зарождения Всемирной Паутины, и с её ростом они стали более востребованными программами. Сейчас браузер — комплексное приложение для обработки всех составляющих веб-страницы. Сегодня самые популярные браузеры распространяются бесплатно или в комплекте с другими продуктами [9].

3. Современные методы создания сайтов

Все методы разработки веб-сайтов можно условно поделить на две группы. К первой группе относятся методы создания сайтов ручного написания с использованием языка разметки HTML и различных языков программирования. Для написания статического сайта достаточно сочетания HTML и CSS. Но если необходим более сложный, динамический сайт, то тут подключают языки программирования. Основными языками программирования, которые наиболее часто используются для разработки сайтов, являются PHP, Javascript, APS.NET [5].

Вторая группа методов разработки сайтов более простая по выполнению. Так как она не требует широких знаний в области программирования. Разработчику сайта предоставляется возможность через графический интерфейс специальных программ или CMS-систем создавать сайты.

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

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

Первое, что необходимо определить на самом раннем этапе, — это на каком языке будет реализована серверная часть сайта. PHP — один из самых распространённых языков программирования общего назначения, который был создан специально для создания динамических веб-сайтов. Однако для некоторых веб-проектов может быть более уместно использовать такие языки программирования, как Java, C#, Python, Ruby или какой-то другой.

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

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

2. Готовые системы управления контентом — это относительно быстрое и недорогое решение. Существует огромное количество популярных CMS с большими сообществами разработчиков, готовыми плагинами и модулями. Как правило, стандартная настройка таких систем не требует никаких знаний языков программирования и обычно сводится лишь к заполнению нескольких полей в пошаговой установке. Готовые CMS можно смело использовать в случаях, если веб-проект стандартный, и намного проще и быстрее воспользоваться уже не единожды опробованными и проверенными решениями в этой области [5].

3. Фреймворк управления контентом — это каркас для создания системы управления контентом. Основное различие CMS и CMF в том, что CMS — это готовая система, которая зачастую главным образом не требует вмешательства программиста, тогда как CMF — конструктор CMS (в том числе и узкоспециализированных) непосредственно для программиста. Сайт, реализованный на CMF, может иметь более простую архитектуру и административную часть и быть менее требовательным к ресурсам сервера. Грамотно спроектированный фреймворк, который был выбран в соответствии с требованиями конкретного веб-проекта при наличии уже готовых модулей, требует от разработчика лишь правильной установки и настройки.

Помимо серверной части, у любого веб-сайта есть и «клиентская» сторона — то, как страницы веб-сайта будут отображаться в браузере пользователя, зашедшего на сайт. Современные тенденции в этой области — использование последних технологий и возможностей HTML5 и CSS3, адаптивный веб-дизайн (в том числе большое внимание уделяется отображению на мобильных устройствах) и ориентация прежде всего на контент сайта (простота, удобство чтения, доступность информации).

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

Каскадные таблицы стилей относятся к специальному коду, позволяющему веб-разработчикам изменять цвета элементов, шрифты, включать фоновые изображения, позиционировать элементы на страницах. CSS3 — это новый стандарт оформления HTML-документов, значительно расширяющий возможности предыдущего стандарта [10].

Валидность и соответствие исходного кода страниц стандартам W3C — важнейшие составляющие поисковой оптимизации сайта. Большое количество ошибок и невалидный, плохо оптимизированный код могут заметно снизить скорость загрузки сайта и затруднить доступ к информации на сайте [12].

С ростом мобильного трафика все большую актуальность приобретает создание мобильной версии сайта. Но проект, который замечательно выглядит и работает в обычном режиме, может быть некорректным в режиме просмотра с мобильного. Мобильная версия сайта должна быть максимально простой, читаемой и не загружать пользователя ненужной информацией [10].

Использование современных стандартов и внедрение новых технологий — общемировая тенденция в области создания сайтов. Сайты, над которыми ведётся постоянная работа, имеющие понятную логическую структуру, построенные по технологии адаптивного веб-дизайна и с валидным кодом, ранжируются поисковыми системами и вебометрическими рейтингами наиболее высоко. Поэтому для разработки сайта, целью которого является улучшение позиций в поисковых выдачах и привлечение большего количества посетителей, необходимо соответствовать вышеописанным требованиям.

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

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

Все статические сайты созданы с помощью языка гипертекстовой разметки HTML. Язык гипертекстовой разметки HTML служит для наглядного и хорошо структурированного представления информации в сети Интернет. Программы, интерпретирующие данную разметку и выводящие информацию на экран, стали называться браузерами. На сегодняшний день известно много их разновидностей: Firefox, Chrome, Opera, Microsoft Edge и др [8].

Разнообразие браузеров впоследствии привело к нюансам и разночтениям в интерпретации некоторых инструкций языка HTML и соответственно проблемам адаптации HTML-документа к разным вариантам их интерпретации. Для разрешения данной проблемы был создан консорциум W3C, в задачу которого входит составление спецификации, отражающей современный уровень развития возможностей языка с учетом разнообразных предложений разработчиков браузеров. Важными итогами работы консорциума стал выход спецификации HTML 4.0 и HTML 5.0. В частности, в HTML 4.0 рекомендуется разделение описания структуры документа от его вида на экране монитора или мобильного устройства, что значительно упрощает разработку, исправление документа, а также поддержку большого числа платформ, сред и т.п.

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

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

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

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

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

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

Контент динамических сайтов хранится обычно в базе данных, а на специальных языках программирования пишутся программы, генерирующие «на лету» из содержимого таких баз данных HTML-странички, которые, собственно, и показываются пользователю (рис. 5).

База данных — структурированный упорядоченный набор данных. Система управления базами данных (СУБД) — программа, предназначенная для организации и ведения базы данных.

MySQL — бесплатная свободно-распространяемая СУБД. Данные в базе MySQL хранятся в форме таблиц. При создании таблицы задаются ее столбцы, дальнейшие манипуляции (добавление, изменение, удаление) производятся со строками. Для управления базой данных используется язык SQL.

На одном сервере MySQL может быть расположено несколько баз данных. Это позволяет выделить отдельную базу данных для каждого пользователя.

Структура динамического веб-сайта
Рисунок 5 — Структура динамического веб-сайта

База данных содержит в себе таблицы. Таблицы базы данных состоят, как и обычные таблицы, из строк и столбцов. Столбцы имеют заранее определенное название и тип данных, а строки хранят непосредственно сами данные.

Язык PHP имеет встроенные функции для работы с MySQL и многими другими базами данных. Это позволяет хранить в базе данных пользователей, сообщения, содержание страниц, статистику сайта и другую информацию. При запросе страницы PHP обращается к базе данных, получает необходимые данные и на основе их формирует ответ пользователю (чаще всего это HTML страница) [4].

Схема работы сервера СУБД
Рисунок 6 – Схема работы сервера СУБД

Веб-сервером называют специальную программу, обеспечивающую работу сайта, а также компьютер, на котором она работает. Веб-сервер обрабатывает запросы, полученные через Интернет от браузера (клиента) и выдает в ответ нужный ресурс: HTML-код страниц, изображения, видеоролики и т.п.

Для веб-сервера, как правило, используется специально выделенный компьютер, работающий круглосуточно и имеющий постоянное подключение к Интернет. Так как к серверу могут одновременно обращаться множество клиентов, сервер должен быть быстродействующим и надежным [8].

PHP — серверный язык создания приложений, ориентированный на веб-разработку. PHP код может быть внедрен в HTML-страницу и будет выполняться при каждом ее посещении. Код PHP интерпретируется веб-сервером и генерирует HTML-код или другой вывод (например, графику), который отсылается браузеру пользователя. Так как PHP интерпретируемый язык, он не требует компиляции (преобразования в машинный код в файле .exe) — программы хранятся на веб-сервере как обычные текстовые файлы.

Трехкомпонентная архитектура веб-приложений, реализуемых на языке PHP
Рисунок 7 — Трехкомпонентная архитектура веб-приложений, реализуемых на языке PHP

В настоящее время в мире насчитывается десятки коммерческих и бесплатных CMS.

В таблице 1 приведена статистика использования CMS в мировом Интернете согласно исследованию компании Q-Success (Software Quality Management Consulting) на сайте World Wide Web Technology Surveys [13].

Таблица 1 — Самые распространенные CMS в 2017 году

№ п/пНаименованиеИспользование
1WordPress27,9%
2Joomla3,3%
3Drupal2,2%
4Blogger1,1%
5Shopify0,7%
Самые распространенные CMS в 2017 году

Как видно из таблицы 1, самой распространённой CMS в мировой практике Интернета является WordPress. Joomla и Drupal находятся на 2 и 3 местах, со значительным отрывом от WordPress.

Если провести анализ отечественного Интернета, то получим подобные результаты. Результаты рейтинга CMS по версии компании iTrack [7] представлены в таблице 2.

Таблица 2 — Рейтинг CMS в доменной зоне ru в 2017 году

№ п/пНаименованиеИспользование
1WordPress37,16%
2Joomla20,04%
31С-Битрикс9,48%
4MODx5,4%
5Drupal4,43%
6OpenCart3,37%
7DataLife Engine3,36%
8Wix1,95%
9Прочие26,46%
Рейтинг CMS в доменной зоне ru в 2017 году

Как видно из таблицы, популярность WordPress и Joomla в отечественном Интернете в отличие от мирового почти одинаковая.

Для CMS, которую можно использовать в деятельности компании можно определить ряд следующих требований:

  1. CMS должна быть распространенной в Интернете, и чтобы полученные навыки и знания при работе с выбранной CMS можно было свободно применять для разных тематических областей;
  2. CMS должна позволять создавать web-приложения любой степени сложности, начиная от простых сайтов и заканчивая сложными профессиональными web-порталами типа Интернет-магазины, Интернет-систем по продаже или бронированию билетов и т. п;
  3. CMS должна иметь дружественный интерфейс, чтобы пользователи могли легко и свободно без дополнительной подготовки осваивать работу с CMS;
  4. Немаловажным фактором является большое наличие на русском языке как обычной бумажной литературы, так и наличие профессиональных и вспомогательных электронных онлайн публикаций, дающих возможность самостоятельного изучения CMS для студентов независимо от знания или незнания английского языка;
  5. Большое количество сайтов-форумов где обсуждаются вопросы использования CMS;
  6. Наличие простых процедур инсталляции CMS и интеграции CMS с другими программными продуктами, поддерживающими web-портал;
  7. Желательно чтобы система была с открытым кодом, чтобы была возможность расширять и дорабатывать систему в случае необходимости;
  8. Наличие большого количества бесплатных качественных плагинов, модулей, компонентов, шаблонов в свободном доступе в Интернете, которые с успехом можно было бы использовать в качестве образцов;
  9. CMS должна обеспечивать реализацию и поддержку последних стандартов и методов, используемые для разработки web-приложений;
  10. Возможность интеграции в CMS плагинов, расширений, компонентов, шаблонов, разработанных вне рамок CMS;
  11. Возможность разработки и последующей вставки в CMS обычного web-кода, который мог бы использоваться самостоятельно в Интернет без использования CMS.

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

Система управления контентом
Рисунок 8 — Система управления контентом

По существу, можно перечислить основные составляющие всех CMS:

  • способ представления информационного наполнения сайта;
  • способы описания и механизмы управления дизайном;
  • механизмы авторизации и поддержки сообществ пользователей;
  • механизмы управления контентом (редактирование материалов, выложенных на веб-сайте, и управление структурой сайта);
  • механизмы поддержки бизнес-процессов.

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

Основными задачами, которые решают современные CMS, являются следующие [2]:

  1. Автоматизация всего цикла разработки и публикации web-приложений в Интернете;
  2. Автоматическое изменение представлений содержимого страниц web-портала в сети, обеспечивая возможность реализации различных дизайнов преставления страниц за счет использования разных шаблонов отображения информации, плюс возможность широкого использования шаблонов, созданных другими разработчиками;
  3. Разграничение пользовательских полномочий, что позволяет осуществлять независимую настройку web-портала под представления разных категорий пользователей, включая возможность ведения персональных странниц;
  4. Возможность создания web-портала внутри web-портала, что позволяет создавать сложные web-порталы;
  5. Простота редактирования и создание информации для web-портала;
  6. Возможность автоматически модернизировать web-портал к новым стандартам Интернета;
  7. Возможность разрешения или запрета публикации информации без удаления ее из системы;
  8. Возможность интеграции и использования средств управления проектами по разработке web-приложений;
  9. Масштабируемость, что позволяет развивать системы путем подключения программных расширений от разных разработчиков;
  10. Многоязычность, возможность автоматического перевода и поддержки web-портала для разной национальной целевой аудитории;
  11. Поддержка разных версий сайта;
  12. Обеспечение возможности продвижения web-портала в Интернете путем подстройки к механизмам поисковых систем типа Yandex, Rambler, Google, и др.

Реализация вышеприведенных задач приводит к:

  • повышению качества разработки;
  • уменьшению стоимости и сроков разработки;
  • снижению эксплуатационных расходов;
  • понижению требований к персоналу поддержки.

Главной задачей системы управления контентом является создание платформы для управления структурой и наполнением веб-сайта.

Обычно CMS состоит из двух приложений: CMA — приложения, управляющего контентом, и CDA — приложения, доставляющего контент. CMA позволяет автору, не знающему HTML, управлять созданием, изменением (включая удаление) контента веб-сайта, не обращаясь к помощи веб-мастера. Для создания новой страницы пользователю не нужно обладать специальными знаниями: текстовый редактор, использующийся в CMS, позволяет организовать обновление сайта на уровне работы с офисными приложениями. Модуль CDA компилирует созданный контент для обновления веб-сайта.

Средства CMA сохраняют полученный документ, CDA обеспечивают автоматическую верстку Web-страниц на основе заранее определенных шаблонов оформления сайта. Редизайн (автоматическое переоформление всех страниц) может быть осуществлен простой заменой шаблонов.

Гибкость CMS и интуитивность интерфейса позволяют легко изменить структуру сайта и систему навигации [3].

Преимуществом использования CMS является снижение стоимости создания и поддержки интернет-сайтов, которое достигается за счет уменьшения расходов на зарплату web-мастера, а также времени на поиски документов, составляющих контент, пресечение их дублирования и устранение ошибок.

CMS снижает зависимость стоимости разработки сайта от объема информации, размещенной на нем. CMS не требует дополнительного программного обеспечения, устанавливаемого на клиентской машине, что позволяет увеличить надежность Интернет-ресурса за счет делегирования доступа только авторизованным пользователям [3].

При анализе CMS выделяют 9 основных характеристик:

  1. Системные особенности:
  • язык разработки CMS;
  • тип баз данных (MySQL, MSSQL, Oracle и др.);
  • совместимость с веб-серверами (Webservers: Apache, IIS).

2.        Безопасность:

  • поддержка SSL (может ли данная система использоваться с сертификатом SSL);
  • подтверждение e-mail (посылаются ли подтверждающие ключи);
  •   управление сессиями посетителей (предоставляет ли система администратору информацию о посетителях, которые в данный момент находятся на сайте).

3.        Поддержка:

  • программа сертификации;
  • наличие руководств пользователя и администратора;
  • коммьюнити;
  • онлайн-помощь;
  • сторонние разработчики.

4.        Простота в использовании:

  • drag-n-drop-содержание (может ли пользователь размещать контент на странице в стиле drag-n-drop);
  • дружественные ссылки (формирование легко читаемых и доступных поисковым системам ссылок);
  • возможность изменения размеров изображений;
  • макроязык (наличие языка, позволяющего использовать мощные программные средства без глубоких навыков);
  • массовая закачка файлов;
  • сохранение состояния, предшествующего изменениям.

5.        Управление:

  • управление рекламой;
  • управление содержанием (возможность размещения или удаления) по расписанию;
  • мусорная корзина (возможно ли восстановить информацию после удаления);
  • темы/скины.

6.        Совместимость с технологиями создания и обмена контентом:

  • RSS/XML;
  • FTP;
  • UTF-8;
  • XHTML.

7.        Гибкость:

  • поддержка cgi-режима;
  • расширяемые профили пользователей;
  • локализация интерфейса;
  • метаданные;
  • многоязыковая поддержка.

8.        Реализация:

  • продвинутое кэширование (навигация, шаблоны);
  • кэширование страниц.

9.        Встроенные приложения:

  • блог;
  • чат;
  • форум;
  • управление документами;
  • календарь;
  • гостевая книга;
  • рассылка;
  • фотогалерея;
  • голосование;
  • RSS (Really Simple Syndication) [2].

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

4. Практика

Одной из наиболее популярных платформ для создания сайтов является WordPress.

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

Функции WordPress:

  • дополнительные страницы позволяют легко управлять неблоговым содержимым;
  • полноценная система управления шаблонами позволяет разрабатывать все необходимое от простого блога до сложного Интернет проекта;
  • созданные в шаблоне изменения и записи незамедлительно будут отображены на сайте, без необходимости восстановления статических страниц. Все созданное в HTML полностью совместимо с W3C стандартами;
  • полная поддержка трекбек и обратных ссылок;
  • посетители могут оставлять комментарии на блоге, которые можно отключать;
  • защита от спама позволяет обезопасить блог от спам-комментариев;
  • регистрация пользователей позволяет посетителям регистрироваться, управлять профайлами и оставлять авторизованные комментарии на сайте;
  • посты защищенные паролем позволяют устанавливать пароли для необходимых постов, чтобы скрыть их от других пользователей;
  • XML-RPC интерфейс позволяет расширить возможности WordPress и использовать дизайн клиентов для других платформ;
  • пользовательские группы позволяют создать до 10 уровней пользователей, с различными настраиваемыми привилегиями;
  • закладки позволяют легко опубликовать содержимое сайта или добавить ссылки.

Ниже приведен исходный код элементов системы управления контентом WordPress.

Index.php

<?php

/**

 * Front to the WordPress application. This file doesn’t do anything, but loads

 * wp-blog-header.php which does and tells WordPress to load the theme.

 *

 * @package WordPress

 */

/**

 * Tells WordPress to load the WordPress theme and output it.

 *

 * @var bool

 */

define(‘WP_USE_THEMES’, true);

/** Loads the WordPress Environment and Template */

require( dirname( __FILE__ ) . ‘/wp-blog-header.php’ );

wp-config:

<?php

/**

 * Основные параметры WordPress.

 *

 * Скрипт для создания wp-config.php использует этот файл в процессе

 * установки. Необязательно использовать веб-интерфейс, можно

 * скопировать файл в «wp-config.php» и заполнить значения вручную.

 *

 * Этот файл содержит следующие параметры:

 *

 * * Настройки MySQL

 * * Секретные ключи

 * * Префикс таблиц базы данных

 * * ABSPATH

 *

 * @link https://codex.wordpress.org/Editing_wp-config.php

 *

 * @package WordPress

 */

// ** Параметры MySQL: Эту информацию можно получить у вашего хостинг-провайдера ** //

/** Имя базы данных для WordPress */

define(‘DB_NAME’, ‘goodkey’);

/** Имя пользователя MySQL */

define(‘DB_USER’, ‘root’);

/** Пароль к базе данных MySQL */

define(‘DB_PASSWORD’, »);

/** Имя сервера MySQL */

define(‘DB_HOST’, ‘localhost’);

/** Кодировка базы данных для создания таблиц. */

define(‘DB_CHARSET’, ‘utf8mb4’);

/** Схема сопоставления. Не меняйте, если не уверены. */

define(‘DB_COLLATE’, »);

/**#@+

 * Уникальные ключи и соли для аутентификации.

 *

 * Смените значение каждой константы на уникальную фразу.

 * Можно сгенерировать их с помощью {@link https://api.wordpress.org/secret-key/1.1/salt/ сервиса ключей на WordPress.org}

 * Можно изменить их, чтобы сделать существующие файлы cookies недействительными. Пользователям потребуется авторизоваться снова.

 *

 * @since 2.6.0

 */

define(‘AUTH_KEY’,         ‘.e`@UG+KsOLEJ@6B;q50xUpCEu?!RZ9h.WtQ)<Y`CZhs_5]?].M]P6i-xzMrra20’);

define(‘SECURE_AUTH_KEY’,  ‘_5Z)5L?mPMI$?AD}0W96q6#pBkw!]bl5enEs[G)=p^77j6K-Ovntj?-/ZE}Pu%!J’);

define(‘LOGGED_IN_KEY’,    ‘G3+<9f&ZQm(q/3Mj(fbdc=[<b!X)P4_B|^j3lU_8+m4> ; y5o}UD4H**/@*5[pN’);

define(‘NONCE_KEY’,        ‘,K$_Er*gC~WSA==eIFo?bZ;kO}Cq(@g2ZC)K5S%1I:y)B;NB=$}XY$t;pum}z/AJ’);

define(‘AUTH_SALT’,        ‘amr9v?MS}}!;z)KLy(SR1C%|~E*^o3oX0e3,N^|TC$Hd< _Z36kdrl+hx_AaLtR8’);

define(‘SECURE_AUTH_SALT’, ‘P2tVT{m{yoD86RW#hVWT1<XL}]&xf$wBtf<p;a_oR(k9TnMf]@0zL(ADL`qGQ3Jl’);

define(‘LOGGED_IN_SALT’,   ‘;dE%`[E:Sk;QI(JrOQ1eqz_O-gn:ikN3)Wv*mncskZV=jE8fhr6xkXCk&&%0$Q=C’);

define(‘NONCE_SALT’,       ‘bSElNON^Be]Ul~ g_C7iSh%L AA};apWs*>I`yRULN]}kXM@1:LJ=eu1q-^UYc!g’);

/**#@-*/

/**

 * Префикс таблиц в базе данных WordPress.

 *

 * Можно установить несколько сайтов в одну базу данных, если использовать

 * разные префиксы. Пожалуйста, указывайте только цифры, буквы и знак подчеркивания.

 */

$table_prefix  = ‘wp_’;

/**

 * Для разработчиков: Режим отладки WordPress.

 *

 * Измените это значение на true, чтобы включить отображение уведомлений при разработке.

 * Разработчикам плагинов и тем настоятельно рекомендуется использовать WP_DEBUG

 * в своём рабочем окружении.

 *

 * Информацию о других отладочных константах можно найти в Кодексе.

 *

 * @link https://codex.wordpress.org/Debugging_in_WordPress

 */

define(‘WP_DEBUG’, false);

/* Это всё, дальше не редактируем. Успехов! */

/** Абсолютный путь к директории WordPress. */

if ( !defined(‘ABSPATH’) )

         define(‘ABSPATH’, dirname(__FILE__) . ‘/’);

/** Инициализирует переменные WordPress и подключает файлы. */

require_once(ABSPATH . ‘wp-settings.php’);

header.php

<?php

/**

 * The header for our theme.

 *

 * Displays all of the <head> section and everything up till <div id=»content»>

 *

 * @package storefront

 */

?><!DOCTYPE html>

<html <?php language_attributes(); ?>>

<head>

<meta charset=»<?php bloginfo( ‘charset’ ); ?>»>

<meta name=»viewport» content=»width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no»>

<link rel=»profile» href=»http://gmpg.org/xfn/11″>

<link rel=»pingback» href=»<?php bloginfo( ‘pingback_url’ ); ?>»>

<?php wp_head(); ?>

</head>

<body <?php body_class(); ?>>

<div id=»page» class=»hfeed site»>

         <?php

         do_action( ‘storefront_before_header’ ); ?>

         <header id=»masthead» class=»site-header» role=»banner» style=»<?php storefront_header_styles(); ?>»>

                   <div class=»col-full»>

                            <?php

                            /**

                             * Functions hooked into storefront_header action

                             *

                             * @hooked storefront_skip_links                       — 0

                             * @hooked storefront_social_icons                     — 10

                             * @hooked storefront_site_branding                    — 20

                             * @hooked storefront_secondary_navigation             — 30

                             * @hooked storefront_product_search                   — 40

                             * @hooked storefront_primary_navigation_wrapper       — 42

                             * @hooked storefront_primary_navigation               — 50

                             * @hooked storefront_header_cart                      — 60

                             * @hooked storefront_primary_navigation_wrapper_close — 68

                             */

                            do_action( ‘storefront_header’ ); ?>

                   </div>

         </header><!— #masthead —>

         <?php

         /**

          * Functions hooked in to storefront_before_content

          *

          * @hooked storefront_header_widget_region — 10

          */

         do_action( ‘storefront_before_content’ ); ?>

         <div id=»content» class=»site-content» tabindex=»-1″>

                   <div class=»col-full»>

                   <?php

                   /**

                    * Functions hooked in to storefront_content_top

                    *

                    * @hooked woocommerce_breadcrumb — 10

                    */

                   do_action( ‘storefront_content_top’ );

content.php

<?php

/**

 * Template used to display post content.

 *

 * @package storefront

 */

?>

<article id=»post-<?php the_ID(); ?>» <?php post_class(); ?>>

         <?php

         /**

          * Functions hooked in to storefront_loop_post action.

          *

          * @hooked storefront_post_header          — 10

          * @hooked storefront_post_meta            — 20

          * @hooked storefront_post_content         — 30

          * @hooked storefront_init_structured_data — 40

          */

         do_action( ‘storefront_loop_post’ );

         ?>

</article><!— #post-## —>

Footer.php

<?php

/**

 * The template for displaying the footer.

 *

 * Contains the closing of the #content div and all content after

 *

 * @package storefront

 */

?>

                   </div><!— .col-full —>

         </div><!— #content —>

         <?php do_action( ‘storefront_before_footer’ ); ?>

         <footer id=»colophon» class=»site-footer» role=»contentinfo»>

                   <div class=»col-full»>

                            <?php

                            /**

                             * Functions hooked in to storefront_footer action

                             *

                             * @hooked storefront_footer_widgets — 10

                             * @hooked storefront_credit         — 20

                             */

                            do_action( ‘storefront_footer’ ); ?>

                   </div><!— .col-full —>

         </footer><!— #colophon —>

         <?php do_action( ‘storefront_after_footer’ ); ?>

</div><!— #page —>

<?php wp_footer(); ?>

</body>

</html>

Заключение

Язык гипертекстовой разметки HTML (HyperText Markup Language) был предложен Тимом Бернерсом-Ли в 1989 году в качестве одного из компонентов технологии разработки распределенной гипертекстовой системы World Wide Web. Известны шесть версий HTML (1.0, 2.0, 3.0, 3.2, 4.0, 5.0). На данный момент актуальной версией HTML является HTML5, которая совмещает все преимущества старых версий, некоторые теги в ней уже не поддерживаются, появились возможности работы с видео, аудио и графическим контентом.

Web-страницы — это документы в формате HTML, содержащие текст и специальные тэги (дескрипторы) HTML. По большому счету тэги HTML необходимы для форматирования текста (т.е. придания ему нужного вида), который «понимает» браузер. Документы HTML хранятся в виде файлов с расширением .htm или .html.

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

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

Система управления контентом – это автоматизированная система обработки и управления информацией, позволяющая разрабатывать динамические веб-сайты. Одной из наиболее популярных систем управления контентом является WordPress. Это бесплатная система управления содержимым сайта, с открытым исходным кодом, написанная на языке PHP, в качестве сервера базы данных использует MySQL.

Список использованной литературы

  1. Анцыпов А. В. Обеспечение надежности программных средств в зависимости от качества документации / А. В. Анцыпов // Проблемы программирования. — 2008. — №2-3. – С. 249 – 253.
  2. Вальчевский А. С. Технология системы управления контентом [Электронный ресурс] / А. С. Вальчевский, Е. Б. Никитин // http://belisa.org.by/pdf/PTS2005/219-220.pdf (дата обращения 19.04.2017).
  3. Горнаков С. Г. Осваиваем популярные системы управления сайтом (CMS) / С. Г. Горнаков. – М.: ДМК Пресс, 2009. – С. 20 – 31.
  4. Ключевой запрос: [Электронный ресурс] / URL: http://seo-for-ucoz.com/publ/seo_terminy/kljuchevoj_zapros_poiskovyj_zapros/1-1-0-24 (Дата обращения: 15.05.2017).
  5. Масляк Т. А. Анализ методов разработки сайтов / Т. А. Масляк, Т. А. Колесникова // Информационные технологии: наука, техника, технология, образование, здоровье: Тезисы докладов XXIII Международной научно-практической конференции, Ч.IV (20-22 мая 2015 г., Харьков). – С. 230.
  6. Основы языка гипертекстовой разметки HTML и CSS: Учебное пособие/Сост. С. М. Наместников. — Ульяновск: УлГТУ, 2014. – 91 c.
  7. Официальный сайт фирмы iTrack [Электронный ресурс]. Режим доступа: http://itrack.ru/research/cmsrate/ (дата обращения 03.05.2017).
  8. Росс В. С. Создание сайтов: HTML, CSS, PHP, MySQL [Текст]. Учебное пособие, ч. 2 / В. С. Росс — МГДД(Ю)Т, М. — 2011 – 68 с.
  9. Хомич А. А. Веб-браузеры / А. А. Хомич // Информатика. Все для учителя. 2013. — № 10 (34). – С. 30-34.
  10. Шинкевич А. В. Современные технологии создания web-сайтов / А. В. Шинкевич // Проблемы и перспективы современной науки: сб. ст. участников V Респ. науч.-практ. семинара молодых ученых, Минск, 28 нояб. 2014 г. / редколл: В. В. Гедранович [и др.]; Минский ун-т управления. – Минск: Минский университет управления, 2015. – С. 110 – 114.
  11. Atom [Электронный ресурс] / Режим доступа: http://soft.mydiv.net/win/download-Atom.html (дата обращения — 16.04.2017).
  12. The W3C Markup Validation Service [Electronic resource]. – Mode of access: http://validator.w3.org/ (дата обращения 29.04.2017).
  13. Usage of content management systems for websites [Электронный ресуср] / Режим доступа: https://w3techs.com/technologies/overview/content_
    management/all (дата обращения 03.05.2017)

Купить данную работу или заказать подобную