Фронтенд-фреймворк Svelte как альтернатива популярным решениям в контексте создания систем поддержки принятия решений в сфере управления организацией с учетом трансформации экономики России
- Авторы: Дрогайцев И.А.1, Трамова А.М.1,2
-
Учреждения:
- Университет «Синергия»
- Российский экономический университет им. Г. В. Плеханова
- Выпуск: Том 26, № 4 (2024)
- Страницы: 113-121
- Раздел: Менеджмент
- URL: https://ogarev-online.ru/1991-6639/article/view/265572
- DOI: https://doi.org/10.35330/1991-6639-2024-26-4-113-121
- EDN: https://elibrary.ru/WRZTPH
- ID: 265572
Цитировать
Полный текст
Аннотация
В статье затрагивается важность грамотного выбора современных фронтенд-технологий для разработки систем поддержки принятия решений в сфере управления организациями в условиях санкций и ограничений на использование определенных инструментов в России. Новизной данного исследования является подробный сравнительный анализ Svelte с другими популярными фронтенд-фреймворками, выявляющий его технические преимущества и потенциал в качестве эффективной альтернативы популярным решениям на рынке разработки фронтенд части систем поддержки управления организациями. Также рассматриваются его механизм работы, особенности интеграции в текущие системы и экономические преимущества выбора данного инструмента. Актуальность исследования подчеркивается тем, что российские компании сегодня сталкиваются с вызовами ограничения доступа к технологиям различных компаний. Проектирование систем поддержки принятия решений требует новых подходов и инновационных решений, что делает изучение и практическое применение новых технологий, таких как Svelte, крайне актуальными и значимыми. В статье также рассматриваются перспективы развития фреймворка Svelte и делаются выводы о целесообразности и актуальности его применения. В работе применялись следующие методы научного исследования: сбор информации, сравнительный анализ, обобщение, систематизация.
Полный текст
ВВЕДЕНИЕ
Обзор текущей ситуации в управлении организацией в России
В условиях современных вызовов и ограничений, таких как санкции и частая невозможность использовать решения от крупных иностранных IT-компаний, сфера управления организацией в России стоит перед серьезными вызовами и задачами. Российские компании вынуждены искать альтернативные подходы к развитию своих систем поддержки принятия решений.
Существующая ситуация характеризуется не только внешними факторами, но и внутренними изменениями в экономике страны. Важно учитывать, что эффективное управление организацией в условиях санкций требует гибкости, инновационности и готовности к быстрым изменениям.
Именно в таких условиях становится актуальным поиск новых подходов и технологий, способных обеспечить эффективное принятие решений и управление организацией на высоком уровне. В этом контексте становится важным изучение и применение в том числе и современных фронтенд-технологий, способных решать сложные задачи разработки систем поддержки принятия решений.
Актуальность развития систем поддержки принятия решений
Система поддержки принятия решений (СППР) представляет собой компьютерную автоматизированную систему, разработанную с целью предоставления помощи управленцам, сталкивающимся с принятием решений в контексте сложных условий, для выполнения всестороннего и объективного анализа конкретной предметной области.
Система поддержки принятия решений предназначена для облегчения процесса принятия многокритериальных решений в сложных информационных средах. В данной задаче многокритериальность подразумевает оценку результатов решений на основе нескольких параметров одновременно. Информационная сложность заключается в необходимости анализа большого объема данных, выполнение которого без использования современных вычислительных технологий практически невозможно. В таких условиях количество возможных решений обычно значительно, и выбор оптимального решения на основе интуиции, без детального анализа, может привести к серьезным ошибкам [1].
Системы поддержки принятия решений играют ключевую роль в успешном управлении организацией. В непредсказуемой и сложной среде, в которой оказываются компании в условиях санкций и геополитических ограничений, возможность оперативно анализировать информацию, выявлять тенденции и принимать обоснованные решения становится критически важной.
СППР помогают руководителям и специалистам сферы управления использовать данные для принятия стратегических и оперативных решений, улучшая эффективность бизнес-процессов и повышая конкурентоспособность организации. В контексте российских компаний в 2024 году, где доступ к некоторым технологиям и решениям ограничен, использование эффективных и инновационных технологий для создания и развития систем поддержки принятия решений становится более актуальным.
ЦЕЛИ И ЗАДАЧИ ИССЛЕДОВАНИЯ
Эффективная СППР, основанная на передовых технологиях, помогает сократить время на принятие решений, минимизировать риски и повысить общую производительность организации. Поэтому выбор правильного фронтенд-фреймворка, который обеспечит высокую скорость разработки, отзывчивый интерфейс и удобство использования, позволяющее легко взаимодействовать с различными моделями анализа данных, многокритериальными методами принятия решений и визуализацией результатов, становится неотъемлемой частью стратегии развития современных организаций в условиях перемен [2].
Качество фронтенда напрямую влияет на удобство использования и эффективность системы. Фронтенд-фреймворк определяет структуру, организацию и способ взаимодействия компонентов пользовательского интерфейса, что влияет на производительность, масштабируемость, безопасность системы. Хорошо спроектированный фронтенд обеспечивает пользователям быстрый и удобный доступ к необходимой информации, позволяет удобно взаимодействовать с функционалом системы и принимать обоснованные решения на основе представленных данных, а адаптивный и гибкий дизайн интерфейсов позволяет пользователям эффективно работать с системой независимо от их уровня опыта и предпочтений.
Экономические аспекты выбора фронтенд-фреймворка напрямую влияют на затраты на разработку. Одним из важных экономических критериев при выборе фронтенд-фреймворка является стоимость разработки и поддержки. Некоторые фреймворки могут быть более затратными в разработке из-за сложности использования или обучения разработчиков, в то время как другие могут предлагать инструменты и ресурсы, способствующие ускорению процесса разработки и снижению затрат.
Также важно учитывать экономический эффект масштабирования системы на основе выбранного фронтенд-фреймворка. Некоторые фреймворки лучше справляются с увеличением нагрузки и объема данных, что позволяет эффективно масштабировать систему и сохранять высокую производительность при увеличении обработки информации.
Правильно подобранный фронтенд-фреймворк способствует созданию эффективной, удобной и надежной системы поддержки принятия решений, что повышает шансы на успех проекта и улучшение управленческих процессов. В связи с этим целью данного исследования является выявление достоинств и недостатков фреймворка Svelte в качестве альтернативной технологии разработки визуализаций систем поддержки принятия решений. Для достижения данной цели были выполнены задачи по анализу текущих распространенных решений на рынке фронтенд-технологий, механизмов работы и особенностей интеграции Svelte, сравнению этих аспектов с текущими реализациями на рынке и по результатам выполнены задачи по формированию перечня преимуществ и недостатков Svelte как альтернативы текущим решениям.
МЕТОДЫ ИССЛЕДОВАНИЯ
Исследование проводилось путем сбора информации о текущих лидерах на рынке фронтенд-технологий, применимых к разработке систем поддержки принятия решений, и сравнительного анализа их с набирающим популярность фреймворком Svelte. По итогам обобщения и систематизации полученных данных были получены следующие сравнительные данные и особенности Svelte в качестве основного инструмента разработки интерфейсов такого типа систем:
Сравнительный анализ основных фронтенд-фреймворков
На сегодняшний день рынок фронтенд-фреймворков насчитывает множество различных инструментов, каждый из которых имеет свои особенности, преимущества и недостатки. Путем сравнительного анализа популярных фронтенд-фреймворков были выделены следующие основные решения.
Angular – это фреймворк, который предлагает широкий набор инструментов для разработки одностраничных приложений (SPA) и имеет множество функций, таких как двунаправленное связывание данных и модульная структура. Однако Angular может быть избыточным для небольших проектов из-за своей сложности и тяжеловесности. Приложения, разработанные на Angular, могут быть довольно крупными в размере из-за включения всего фреймворка. По этой же причине может страдать производительность самих веб-интерфейсов систем. Разработчиком является крупная западная компания, что накладывает определенные ограничения и сложности в использовании его на внутреннем рынке [3].
React – стал одним из самых популярных фронтенд-библиотек за последние годы. Его основное преимущество – виртуальный DOM, который обеспечивает быструю и эффективную отрисовку компонентов. React также поддерживает множество различных инструментов, что делает его универсальным для создания интерфейсов приложений любого масштаба. Однако работа с основным функционалом данной библиотеки, таким как виртуальный DOM, может потребовать изучения большого количества дополнительных библиотек и концепций. Разработчиком также является крупная западная компания [4].
Vue.js – относительно новый фронтенд-фреймворк, который набирает популярность благодаря своей простоте использования и гибкости. Vue.js предлагает интуитивно понятный синтаксис и позволяет разработчикам создавать приложения без излишней сложности. Однако при разработке крупных и сложных приложений могут возникнуть проблемы с масштабируемостью и структурой кода [5].
Svelte – о котором пойдет речь в данной статье, представляет собой компилятор. Он превосходит Angular, React и Vue.js в плане производительности, так как компилирует код в чистый JavaScript во время сборки, вместо того чтобы выполнять большую часть работы на стороне клиента во время выполнения кода. Синтаксис Svelte более простой и интуитивно понятный, что делает его привлекательным для начинающих разработчиков и ускоряет процесс разработки. Также он не имеет крупных иностранных компаний-спонсоров, что является большим преимуществом1.
В следующем разделе будут более подробно рассмотрены фронтенд-фреймворк Svelte и его потенциал в качестве альтернативы для разработки систем поддержки принятия решений в условиях санкций и ограничений на использование определенных технологий.
Введение в Svelte как альтернативу
Первая версия фреймворка Svelte увидела свет 29 ноября 2016 года. 19 апреля 2018 года вышла вторая версия фреймворка, в которой были устранены некоторые ошибки и за счет этого повышены надежность и производительность. Настоящий прорыв Svelte сделал 21 апреля 2019 года, когда появилась третья версия, которая полностью переосмыслила подход к реактивности веб-компонентов за счет инновационного компилятора.
Svelte представляет собой инновационный фронтенд-фреймворк, который отличается от традиционных библиотек тем, что осуществляет компиляцию во время сборки, а не во время выполнения. Это позволяет избежать излишней нагрузки на браузер и обеспечить быструю загрузку и оптимизацию производительности приложений.
Благодаря этому подходу Svelte значительно сокращает размер и сложность исходного кода, улучшает производительность и обеспечивает более быструю загрузку страниц. Это особенно важно в современном мире, где пользователи все более требовательны к скорости и производительности веб-приложений.
В условиях санкций и ограничений на использование решений от крупных западных корпораций необходимо искать альтернативные инструменты для создания интерфейсов современных и эффективных систем. В этом контексте фронтенд-фреймворк Svelte выделяется как перспективное решение, способное эффективно поддерживать процессы управления организацией в условиях, когда важна не только функциональность, но и независимость от крупных сервисов.
В следующем разделе будут более подробно рассмотрены особенности и преимущества использования Svelte для разработки веб-интерфейсов систем поддержки принятия решений.
РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ
В рамках результатов данного исследования можно выделить следующие преимущества и недостатки Svelte как фронтенд-фреймворка для разработки интерфейсов систем поддержки принятия решений:
Простота использования и быстрая загрузка
Одними из ключевых преимуществ фронтенд-фреймворка Svelte являются простота его использования и интуитивность в работе с компонентами. По сравнению с другими популярными фреймворками, такими как React и Angular, Svelte предлагает более декларативный подход к созданию пользовательских интерфейсов, что делает процесс разработки более эффективным и прозрачным.
Синтаксис Svelte сильно приближен к JavaScript и имеет меньший уровень абстракций по сравнению с конкурентами. Производительность, минимизация и абстракция максимально приближены к нативному коду. Это позволяет, во-первых, обеспечить более быструю разработку, что экономит ресурсы организации, а во-вторых, позволяет в большем количестве использовать разработчиков с меньшим опытом работы, что экономит фонд оплаты труда.
Однако стоит отметить, что ввиду компилятивного подхода компоненты Svelte не поддерживают совместимость с другими фреймворками, что может быть препятствием при переходе с текущего фреймворка системы на Svelte. Тем не менее эту проблему можно решить, одновременно применяя подходы code splitting и tree shaking, что упростит переходный период и снизит затраты.
Эффективное управление состоянием и компонентами
В контексте разработки систем поддержки принятия решений эффективное управление состоянием и компонентами играет ключевую роль. Svelte предлагает особый подход к управлению состоянием компонентов, что делает его привлекательным выбором для подобных проектов.
Одним из ключевых преимуществ Svelte является автоматическое привязывание данных к компонентам. Это позволяет разработчикам избежать рутинной работы по управлению состоянием и обновлению компонентов вручную. Вместо этого Svelte самостоятельно отслеживает изменения данных и обновляет компоненты при необходимости, что сокращает объем кода и упрощает разработку.
Хранилище состояния в Svelte представляет собой обсервебал – объекты, за которыми следит приложение и автоматически обновляет данные при изменениях. Это происходит на этапе компиляции, когда устанавливаются все подписки. То, что реактивность создается только там, где это необходимо, дает плюс не только при разработке, но и при работе веб-части системы, и в плане быстродействия, и в плане страховки от ошибок разработчиков, что позволяет организации нанимать больше начинающих разработчиков и также экономить фонд оплаты труда, получая продукт по качеству не худший, чем на других фреймворках.
Благодаря эффективному управлению состоянием и компонентами Svelte помогает разработчикам создавать системы поддержки принятия решений, которые легко масштабируются, поддерживаются и модифицируются в условиях переменчивой среды, характерной для управления организациями в современном мире, где часто необходимо вносить глобальные изменения в проект в силу изменившихся обстоятельств окружающих систем и обстановки.
Оптимизация производительности и ресурсоемкости
Одним из ключевых факторов, который делает Svelte привлекательным выбором для разработки систем поддержки принятия решений в условиях ограниченных ресурсов, является его направленный подход к оптимизации производительности и эффективному использованию ресурсов.
В отличие от других фреймворков, таких как React, Svelte обходится без использования Virtual DOM. Вместо этого он компилирует исходный код в оптимизированный JavaScript, что позволяет создавать веб-приложения с меньшим размером исходного файла без дополнительных слоев абстракции. Эта особенность помогает оптимизировать загрузку компонентов веб-приложения путем обновления только необходимых узлов в DOM.
Например, начальный размер бандла Svelte составляет всего 3 килобайта по сравнению с почти 9 килобайтами у Preact (который сам по себе является максимально минифицированной версией популярного React), что делает его очень легковесным и эффективным фреймворком.
Это происходит по той причине, что большинство фреймворков несут в себе функциональность, которая никогда не будет использована в проекте, что раздувает размер бандла и расходует лишние ресурсы и сервера, и клиента. Основная идея заключается в том, что Svelte существует только тогда, когда разрабатывается код, во время компиляции работает статический анализатор и после написания компилирует в низкоуровневый высокоэффективный код.
Схема работы со Svelte строится на следующих этапах: на первом разрабатывается высокоуровневый декларативный код, как и на остальных популярных фреймворках. На втором этапе в действие вступает компилятор, который превращает его в бандл с низкоуровневым и императивным кодом с высокой производительностью.
Отсутствие виртуального дома повышает производительность, так как изменение точечно, и в моменте точно известно, какой DOM узел изменился. В рантайме остается только готовый код, а после сборки никаких следов не остается, что в свою очередь приводит к крайне небольшому конечному бандлу. Также это имеет эффект повышения безопасности, скрывая для клиента фреймворк, на котором написана система, что также важно при разработке внутри организаций со строгой комплаенс-политикой относительно данных.
Благодаря автоматической оптимизации и минимизации кода Svelte позволяет создавать легкие и быстрые системы поддержки принятия решений, что особенно важно в условиях ограниченной доступности к вычислительным ресурсам и возможности использования технологий от крупных корпораций. Отзывчивость интерфейса помогает принимать ключевые управленческие решения, а также располагает к пользованию разработанным инструментом. Эффективное управление памятью и ресурсами также играет важную роль в повышении стабильности и отзывчивости приложений, что позволяет пользователям быстро и комфортно работать с системой поддержки принятия решений в современной экономической среде.
Поддержка редакторами кода
Svelte обладает не только преимуществами, но и недостатками. Их необходимо учитывать, принимая решение о выборе фронтенд-библиотеки для разработки системы поддержки принятия решений, иначе проблемы, вызванные неправильным подбором, лягут на команду программистов, что непременно повысит и время, и стоимость разработки, которые являются критичными факторами для предприятия.
Первое, что хотелось бы отметить, это вопрос поддержки редакторами. VS Code имеет хорошую интеграцию со Svelte, в то время как WebStorm имеет сложности в работе. Даже при установке различных плагинов иногда возникают ситуации, когда определенные элементы выделяются красным цветом, хотя на самом деле это абсолютно корректный и рабочий синтаксис в контексте использования Svelte.
Это подчеркивает важность выбора правильных инструментов для разработки программного обеспечения, особенно в сфере фронтенд-разработки. Даже у наиболее популярных платформ могут возникать проблемы при работе с определенными языками программирования или технологиями. Таким образом, при выборе данного фреймворка нужно учитывать, какая среда разработки используется на предприятии, чтобы избежать проблем в будущем либо с самой разработкой, либо с закупкой дополнительного программного обеспечения.
Обеспеченность библиотеками компонентов
Необходимо учитывать, что Svelte – относительно недавно вышедший фреймворк и в процессе разработки могут возникнуть сложности с поиском подходящих библиотек компонентов. Эту проблему можно решить за счет тщательного поиска и анализа решений на рынке, однако эти временные трудозатраты необходимо учитывать при планировании бюджета и времени разработки веб-интерфейса системы.
Также проблему можно решить за счет самостоятельной разработки компонентов. Создание уникальных и привлекательных компонентов для сайта системы потребует дополнительных усилий и времени, однако самостоятельная разработка компонентов – хороший выбор с точки зрения независимости относительно сторонних продуктов и безопасности кода. Помимо этого, самостоятельная разработка компонентов позволяет реализовать уникальные и наиболее подходящее концепции в построении части пользовательского интерфейса конкретной системы поддержки принятия решений.
ЗАКЛЮЧЕНИЕ
В условиях санкций и ограничений на использование решений от крупных технологических компаний российским организациям становится важно искать альтернативные пути развития и совершенствования своих систем поддержки принятия решений. Адаптация к особенностям трансформации экономики также означает умение интегрировать новые технологии и методики разработки в существующую инфраструктуру организации.
Svelte в качестве фронтенд-решения для систем поддержки принятия решений предоставляет возможность плавного внедрения и интеграции, минимизируя риски и упрощая процесс обновления. Благодаря своей простоте использования, быстрой загрузке и оптимизации производительности Svelte предоставляет хорошие возможности для адаптации к новым реалиям и требованиям рынка, оставаясь при этом не только хорошей заменой, но и шагом вперед в плане используемых технологий.
Интеграция систем, разработанных на основе Svelte, позволит управленческому персоналу быстрее и эффективнее анализировать данные, принимать решения и реагировать на изменения внешней среды. Вместе с тем и с точки зрения экономической целесообразности Svelte демонстрирует устойчивые перспективы и может быть хорошим решением в условиях ограниченных ресурсов.
Текущий уровень поддержки и скорость развития Svelte позволяют в будущем ожидать развития с новой функциональностью, улучшенным механизмом оптимизации, расширенным набором компонентов и инструментов для эффективного управления состоянием приложений. Это позволит разработчикам более эффективно создавать сложные системы поддержки принятия решений, адаптированные к конкретным потребностям организаций.
Трансформация экономики России требует гибкости, быстроты реакции и эффективности внедрения новых решений. Глубокое понимание преимуществ Svelte и его успешное внедрение в разработку могут сыграть важную роль в обеспечении успешной трансформации систем поддержки принятия решений и повышении конкурентоспособности компаний в условиях перемен.
Вклад авторов: все авторы сделали эквивалентный вклад в подготовку публикации. Авторы заявляют об отсутствии конфликта интересов.
Contribution of the authors: the authors contributed equally to this article. The authors declare no conflicts of interests.
Финансирование. Исследование проведено без спонсорской поддержки.
Funding. The study was performed without external funding.
1Svelte. URL: https://svelte.dev/ (дата обращения: 27.02.2024)
Об авторах
Игорь Александрович Дрогайцев
Университет «Синергия»
Автор, ответственный за переписку.
Email: igor_drogaitsev@inbox.ru
ORCID iD: 0009-0002-5875-4879
SPIN-код: 4877-5453
аспирант факультета информационных технологий
Россия, МоскваАзиза Мухамадияевна Трамова
Университет «Синергия»; Российский экономический университет им. Г. В. Плеханова
Email: Tramova.AM@rea.ru
ORCID iD: 0000-0002-4089-6580
SPIN-код: 8583-3592
д-р экон. наук, доцент, профессор кафедры прикладной математики; профессор кафедры информатики
Россия, Москва; МоскваСписок литературы
- Кравченко Т. К., Исаев Д. В. Системы поддержки принятия решений. М.: Юрайт, 2024. 327 с. ISBN: 978-5-534-15523-5
- Халина В. Г., Чернова Г. В. Системы поддержки принятия решений. М.: Юрайт, 2024. 494 с. ISBN: 978-5-534-01419-8
- Фримен A. Angular для профессионалов. Санкт-Петербург: Питер, 2018. 800 c. ISBN: 978-5-4461-0451-2
- Бэнкс А., Porsello E. React и Redux. Функциональная веб-разработка. Программы. Санкт-Петербург: Питер, 2018. 336 c.
- Эрик Х. Vue.js в действии. Профессиональная литература. Санкт-Петербург: Питер, 2018. 304 c. ISBN: 978-5-4461-1098-8
Дополнительные файлы
