Аннотация 2
Введение 6
1 Анализ динамической персонализации, теоретические основы. Разработка
алгоритма реализации 8
1.1 Введение в динамическую персонализацию 8
1.2 Алгоритм разработки компонента, изменяющего темы веб-сайта 9
1.3 Алгоритм разработки компонента, изменяющего язык веб-сайта 12
1.4 Алгоритм разработки компонента, позволяющего администратору
задавать тематические, сезонные и праздничные темы 15
1.5 Алгоритм разработки компонента, динамически изменяющего
наполнение и дизайна веб-сайта в зависимости от текущего домена 18
1.6 Алгоритм разработки компонента, анализирующего цифровой след
пользователя для отображения динамической персонализации 21
2 Создание общей структуры разработки веб-приложения, выбор
инструментов разработки 26
2.1 Введение в структуру проекта, этапы разработки 26
2.2 Выбор направления разработки 27
2.3 Выбор архитектуры приложения 28
2.4 Выбор основных инструментов разработки 30
2.5 Выбор фреймворка 31
2.6 Выбор методологии программирования 33
3 Реализация компонентов по алгоритмам динамической
персонализации 36
3.1 Реализация компонента, изменяющего тему веб-сайта 36
3.2 Реализация компонента, изменяющего язык веб-сайта 39
3.3 Реализация компонента, позволяющего администратору задавать
тематические, сезонные и праздничные темы 42
3.4 Реализация компонента, динамически изменяющего наполнение и
дизайна веб-сайта в зависимости от текущего домена 46
3.5 Реализация компонента, анализирующего цифровой след пользователя
для отображения динамической персонализации 48
Заключение 52
Список используемой литературы 53
В современном быстро развивающемся мире всё большее количество пользователей открывают для себя глобальную сеть интернет. В связи с этим, наличие удобного и интуитивно понятного дизайна для удовлетворения нужд большинства стало неотъемлемой частью каждого современного веб-сайта. То, как мы взаимодействуем с интерфейсом веб-сайта, может оказать существенное влияние на наш опыт работы, и, следовательно, важно убедиться, что эти интерфейсы спроектированы интуитивно понятными и удобными для пользователя. Одними из ключевых факторов, которые могут повлиять на работу пользователя, являются внешний вид и язык интерфейса.
Основным направлением в данной выпускной квалификационной работе является изучение методологий по разработке динамической персонализации веб-сайта. Изучение и анализ основных практик и методов разработки динамической персонализации позволят разработать наиболее гибкий и адаптируемый алгоритм. Алгоритм будет разработан таким образом, чтобы динамически адаптироваться к потребностям пользователя, гарантируя, что интерфейс будет простым в использовании и адаптирован к их требованиям, позволяя выполнять свои задачи эффективно и с минимальными усилиями.
Целью данной выпускной квалификационной работы является разработка алгоритма, позволяющего создать завершенное и оптимизированное с точки зрения быстродействия решение по внедрению динамической персонализации на веб-сайт.
Основной задачей данной работы является достижение всех необходимых критериев, связанных с определением динамической персонализации.
Для достижения поставленной цели, выделим следующие задачи:
- анализ существующих инструментов редактирования дизайна вебсайта как пользователем, так и администратором. Такими инструментами могут являться компоненты выбора темы, дизайна и языка для пользователя, а также поле выбора тематического дизайна для администратора;
• реализация компонента, считывающего текущий домен. Данный компонент будет динамически изменять дизайн и наполнение вебсайта в зависимости от полученного домена;
• внедрение функционала, анализирующего каждого отдельного пользователя, его поведение, предпочтения и изменяющего или добавляющего определенные компоненты, основываясь на этих данных.
В целом ожидается, что разработка данного алгоритма позволит реализовывать наиболее эффективные, практичные и корректные с точки зрения оптимизации и соответствия нормам решения.
Первый раздел данной работы посвящен созданию алгоритмов, описывающих реализацию компонентов динамической персонализации. В нем даны основные теоретические сведения и общие представления о каждом из описываемых компонентов. Каждый из алгоритмов выполнен в виде пошагового описания выполнения задачи.
Во втором разделе были изучены существующие инструменты разработки. Из них были выбраны наиболее актуальные и подходящие под нужды текущего веб-приложения.
В третьем разделе были представлены реализации всех компонентов, описанных в первом разделе. Реализация представляет из себя пошаговое выполнение каждого из алгоритмов, сформулированных в первом разделе, с демонстрацией полученных результатов в виде текстового описания и скриншотов.
Результатом работы являются сформулированные алгоритмы реализации поставленных задач, а также примеры разработок компонентов по этим алгоритмам с использованием наиболее подходящих инструментов разработки.
По итогам данной выпускной квалификационной работы были разработаны алгоритмы реализации динамической персонализации.
В рамках проделанной работы был произведен анализ предметной области и теоретических сведений динамической персонализации. Была произведена декомпозиция общей задачи динамической персонализации на отдельные подзадачи, которые рассматривались по отдельности. Для каждой из поставленных задач были сформулированы пошаговые алгоритмы реализации.
В рамках процесса реализации поставленных задач по сформулированным алгоритмам был произведен анализ существующих инструментов разработки. Для реализации текущего веб-приложения были выбраны наиболее актуальные и подходящие инструменты. При выборе архитектуры приложения, выбор был сделан в пользу компонентноориентированной архитектуры. Такой выбор обусловлен наличием у данной архитектуры простой горизонтальной масштабируемости, высокой гибкости при разработке отдельных модулей и возможности переиспользования компонентов. Основным инструментом разработки послужил фреймворк React и его сторонние библиотеки. Данный фреймворк был выбран за счет простоты использования, высокой производительности и масштабируемости.
Были сформулированы общие представления реализуемых компонентов. На основе разработанных алгоритмов были описаны пошаговые примеры реализаций компонентов в текстовом формате и с демонстрацией скриншотов.
Итогом работы являются разработанные алгоритмы реализации динамической персонализации.