Дисциплины - Проектирование динамических страниц

Что такое динамические страницы?

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

Уникальный адрес или маршрут для html-страницы можно получить с помощью Nginx, Apache, Node, PHP и множества других технологий и фрэймворков. Часто для этого необходимо лишь установить сервер (для Windows это может быть OpenServer) и разместить свою страницу в корневой папке сервера (для OpenServer это может быть папка domains/localhost).

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

Проблемма в том, что приложения только с клиентской маршрутизацией (фрэймворки Angular, React, Vue) для SEO-продвижения бесполезны, поисковики не видят контента таких "лэндингов". А приложения только с серверной маршрутизацией - не динамичны.

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

/
/about_company
/vacancy
/blog
/contact

А серверные маршруты не видны для клиента. Для реализации таких маршрутов можно использовать модуль Axios либо технологии Ajax.

По динамике взаимодействия клиентской и серверной маршрутизации выделяются следующие виды веб-приложений.

Серверная маршрутизация и динамика на стороне клиента. Например, с использованием языка программирования PHP на сервере и функционального JavaScript или библиотек JavaScript (например, jQuery). Маршрут определяется на стороне сервера. Сайты разработанные таким образом обладают динамикой обладают динамикой только в пределах одной страницы (независимо от способов шаблонизации на стороне сервера). Другая страница обладает независимым маршрутом, но при переходе на такую страницу происходит  обновление всего контента. При такой разработке говорить о динамике можно только в пределах  одной страницы.

Клиентская маршрутизация и динамика на стороне клиента. Такую возможность предоставляют фрэймворки Vue, React, Angular. В базовой установке они предлагают готовые решения для создания лендингов. Благодаря этим фрэймворкам появилась возможность реализовывать любую даже самую сложную динамику и даже реализовывать клиентские маршруты. Сайты с клиентской маршрутизацией хоть и обладают полной динамикой при переходе по страницам (т.е. обновление маршрута происходит без перезагрузки всего контента), но с точки зрения SEO-продвижения - бесполезны: такие сайты сложно продвигать, потому что поисковые роботы и браузеры не видят таких маршрутов, и вообще не видят никакого контента.

SSR и динамика на стороне клиента. Маршрутизация определяется структурой приложения. Такой способ разработки, а соответственно, и архитектуру приложения предоставляют фрэймворки Nuxt (с использованием синтаксиса Vue) и фрэймворк Next (с использованием синтаксиса React) и библиотека https://github.com/thedevdojo/genesis (фрэймворка Laravel). Данные JavaScript фрэймворки предлагают компонентный подходв разработке приложения, позволяют реализовать специальную, "заточенную" под клиента маршрутизацию и возможность реализовывать серверные запросы. Всё что нужно для разработки приложения с динамическими страницами.

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться
00421-00422 ИИТ БГУИР
00423 ИИТ БГУИР
10421-10422 ИИТ БГУИР
10423 БГУИР
20421 БГУИР
30421 БГУИР
30423 БГУИР


Изображения Видео

1. JavaScript. Функциональное программирование. Лекция 2. Преобразование данных <iframe width="560" height="315" src="https://www.youtube.com/embed/EBKzRg4aTro" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
2. JavaScript. Функциональное программирование. Лекция 2 (продолжение) <iframe width="560" height="315" src="https://www.youtube.com/embed/phyt4PFk6Pc" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
3. HTML5 http://erud.by/files/books/HTML5.docx
4. ООП в JavaScript http://erud.by/object_orient_program/586
5. Фоновое видео jQuery http://johnpolacek.github.io/BigVideo.js
Учебная программа