Модульные платформы: возможности реализации персонализируемой интерфейсной и функциональной адаптации в приложениях
Автор: Бычкова Н.А., Азаров И.И.
Журнал: Международный журнал гуманитарных и естественных наук @intjournal
Рубрика: Технические науки
Статья в выпуске: 4-1 (91), 2024 года.
Бесплатный доступ
В статье рассматривается идея архитектуры платформ, позволяющая к существующим модулям добавлять свои в рамках «темы». Тема же является набором таких модулей, а также свойств внешнего вида, что позволяет сменой тем изменять как внешний вид, так и функциональность платформы, улучшая опыт взаимодействия с приложением. Актуально, в частности, для социальных сетей и прочих сервисов, предназначенных для повседневного общения пользователей, поскольку именно там наблюдается динамика по внедрению функционала персонализации, однако она недостаточно гибкая из-за сложности внедрения такого функционала в существующую кодовую базу из-за сложностей расширения текущей архитектуры, которая не предусматривала функционал персонализации как параметров внешнего вида, так и функционала в целом.
Модульная архитектура, проектирование, социальные сети, персонализация, информационные системы, архитектура приложений
Короткий адрес: https://sciup.org/170204828
IDR: 170204828 | DOI: 10.24412/2500-1000-2024-4-1-166-169
Текст научной статьи Модульные платформы: возможности реализации персонализируемой интерфейсной и функциональной адаптации в приложениях
Платформы для взаимодействия между людьми, обмена сообщениями и контентом популярны на сегодняшний день. Они предоставляют различный функционал, облегчающий жизнь как пользователям этих платформ, так и коммерческим организациям, которым необходимо оставаться на связи со своей аудиторией. При современном подходе, который нацелен, в первую очередь, на контент – все очень даже работает. Однако, с увеличением потребления контента пользователями, стандартных средств работы и взаимодействия становится мало. Современные социальные сети и другие коммуникативные платформы, хотя и начинают внедрять функционал персонализации, делают это довольно медленно и не везде он реализо- ван. Однако там, где функционал персонализации появляется, там он позволяет выбирать цветовые схемы внешнего вида, чего явно недостаточно для унификации своего контента или профиля, самовыражения или другого творчества.
Для похожих задач существует модульный подход к проектированию информационных систем. Модульная архитектура [1, 2] – подход к разработке приложений, в котором оно разбивается на независимые друг от друга элементы, которые и являются модулями. Модули выполняют определённую функцию и имеют свою логику, способы взаимодействия с другими. Базовый принцип модульной архитектуры приложения отображается на рисунке 1.
Рис. 1. Базовый принцип модульной структуры приложения
Модульная архитектура обеспечивает приложению независимость модулей друг от друга при разработке, поскольку они обмениваются между собой лишь данными и параметрами, притом реализация остаётся скрытой внутри каждого модуля [4].
Этот подход к архитектуре позволяет в дальнейшем сильно расширять базовый инструментарий по персонализации внешнего вида и функционала социальных сетей и других платформ в целом за счёт:
-
1. Предоставления доступа к стандартным значениям внешнего вида в рамках одной темы (цвет фона, шрифт, расположение пунктов меню, их показ и сокрытие и другим атрибутам).
-
2. Интеграция уже существующих модулей с пользовательскими модулями путем обращения к заранее определённым точкам входа и формировании единого интерфейса на основе ответа.
Поскольку темы можно изменять в реальном времени, это позволяет «на лету» изменять функционал платформы под разные задачи: начиная от рабочих, заканчивая разбиениями на группы по интересам.
В настоящее время для крупных социальных сетей энтузиасты создают различные расширения, позволяющие максимально глубоко изменять внешний вид. У такого полхода есть ряд недостатков:
-
1. Возможности таких расширений заканчиваются там, где требуется изменять функционал приложения, поскольку они имеют доступ только к клиентскому коду
-
2. Расширения неофициальные, а значит, могут перестать поддерживаться и быть совместимы с новыми версиями платформы
-
3. Расширения написаны сторонними разработчиками, а значит платформа не несёт ответственность за сохранность данных и доступов к аккаунтам, что при недобросовестности разработчиков может повлечь за собой негативные последствия.
Однако, у таких расширений есть и преимущества:
-
1. Функционал по персонализации внешнего вида расширяется, предоставляя
-
2. Такая идея персонализации улучшает опыт взаимодействия, как и в целом идея модульной персонализации ввиду отсутствия большого выбора на официальном уровне.
-
3. Пользователи создают, обновляют и делятся своими темами, что расширяет сообщество авторов таких проектов и образует новые группы людей.
большой набор тем или возможность вручную изменить внешний вид платформы.
В общем и целом, идея более гибкой интерфейсной и, в частности, функциональной адаптации пользуется спросом среди пользователей такого рода платформ, однако она плохо поддерживается разработчиками таких платформ.
В рамках возможности реализации такого подхода на основе модульной архитектуры предлагается в каждый модуль внедрять «значения по умолчанию» в модулях, отвечающих за пользовательский интерфейс [5]. Например, цвет и фона в форме авторизации делать публичным, давая возможность изменять его из приложения. В настройках аккаунта может быть создана отдельная категория параметров под внешний вид или темы в целом, если они включают в себя и функциональную персонализацию, куда размещаются настройки по управлению темой. На рисунке 2 представлена диаграмма активности, предлагающая процесс создания темы в рамках социальной сети. В нём представлено абстрактное редактирование темы в виде некоторого набора CSS кода. Такой подход имеет место быть, однако у него могут быть серьёзные недостатки, включающие в себя безопасность решения, а также интуитивную понятливость редактирования для простых пользователей, что может сузить круг потенциальных авторов тем внутри платформы.
Если же говорить в целом про создание тем, то для первоначальной настройки может быть применим такой подход, поскольку на первых порах реализации задачи могут быть невелики по требованиям.

Рис. 2. Пример последовательности действий при создании темы [3]
В дальнейшем, после создания темы можно применять более гибкие способы её редактирования, начиная от drag-and-drop элементов, заканчивая готовыми шаблонами, с которых можно начинать формировать свою тему.
Подводя итог, можно отметить то, что расширение функционала персонализируемой интерфейсной и функциональной адаптации в рамках приложений за счёт модульной архитектуры позволяет очень сильно увеличивать опыт взаимодействия с приложением, а также создавать новые группы лиц, занимающихся созданием и распространением таких тем для конкрет- ной платформы, адаптирующих свои работы под разные платформы, формируя тем самым уже полноценные проекты и выведением функционала уже существующих расширений на официальную интеграцию и поддержку, что уменьшило бы риски при использовании такого рода функционала. Функциональная же составляющая позволила бы адаптировать платформы под разные нужды коммерческих организаций, превращая социальные сети в локальные корпоративные приложения, переключаться между которыми можно было бы мгновенно, при том используя единую базу пользователей.
Список литературы Модульные платформы: возможности реализации персонализируемой интерфейсной и функциональной адаптации в приложениях
- Нил Форд, Марк Ричардс Современный подход к программной архитектуре. - СПб., 2023. - 480 с.
- Роберт Мартин Чистый код. Создание, анализ и рефакторинг. - СПб.: Питер, 2020. - 464 с.
- Тузовский А.Ф. Проектирование и разработка web-приложений. - М.: Юрайт, 2024. - 219 с.
- Модульная архитектура Symfony приложения // Хабр. - [Электронный ресурс]. - Режим доступа: https://habr.com/ru/articles/579976/(дата обращения: 11.02.2024).
- Построение модульной архитектуры приложения на Forwarding-декораторах (авторский перевод) // Хабр. - [Электронный ресурс]. - Режим доступа: https://habr.com/ru/articles/328970/(дата обращения: 19.03.2024).