Десктопное или веб-приложение: плюсы и минусы
Сегодня поговорим об отличиях десктопных и веб-приложений. Не обещаем, что сможем быть полностью непредвзятыми, но постараемся честно рассмотреть плюсы и минусы.
28K открытий
Итак, веб-приложение работает через браузер, используя его как среду выполнения, десктопное— устанавливается, запускается и работает локально. Сравним их по основным характеристикам.
Установка, обновление
Веб-приложение не требует установки, все обновления происходят на сервере, доставляются пользователям сразу — достаточно просто перезагрузить страницу или выйти, а потом снова зайти в аккаунт. Но иногда для его работы нужно установить дополнительные библиотеки или использовать защищенные сетевые протоколы.
Десктопное нужно устанавливать на компьютере или мобильном устройстве, обновлять каждый раз, как выходит новая версия. Несмотря на то, что чаще всего процесс автоматизирован — все равно это занимает время пользователей и ресурсы устройств. Дополнительно придется отслеживать версии на каждом компьютере, смартфоне и планшете.
Публикация / развертывание
Веб-приложение публикуется на локальном или облачном сервере, там же происходит процесс обновления. При этом сервер нужен в любом случае, даже если решение совсем простое. Ведь кроме фронтенда, с которым пользователи будут работать через браузер, нужно где-то размещать бэкенд.
Десктопное придется устанавливать вручную на каждом устройстве. В компании, где много рабочих мест, это может занять достаточно много времени. Плюс в том, что не обязательно выбирать сервер или искать ресурсы для публикации, если речь не идет о клиент-серверном решении.
Надежность
Работа веб-приложения зависит не только от того, насколько грамотно оно разработано и характеристик пользовательского устройства, но также от скорости интернет-соединения, работоспособности удаленного сервера.
Десктопное работает автономно, поэтому главное — качество кода и стабильность оборудования, на котором этот код выполняется. Но если связь с сервером необходима — то возникают те же проблемы, что у «конкурента».
Доступность
Веб-приложение доступно из любой точки мира, с любого устройства, а пользовательские файлы всегда будут под рукой. Но только если есть интернет-соединение или реализована возможность работы офлайн и загрузки-выгрузки данных.
Десктопное доступно всегда — но только с устройства, на котором оно установлено. Чтобы работать с разных устройств, его придется установить на каждом, а также придумать, где хранить файлы, чтобы всегда иметь к ним доступ.
Кроссплатформенность
Веб-приложение одинаково хорошо будет работать на любом устройстве, будь то стационарный компьютер, ноутбук, планшет или смартфон — ведь оно практически не зависит от «железа» или операционной системы. Главное — подходящий браузер. Как правило, для работы большинства веб-клиентов подходят Google Chrome, Mozilla Firefox, Safari от Apple или Windows-браузер (Microsoft Edge / Internet Explorer).
Десктопное зависит от операционной системы, процессора, видеокарты, ряда других параметров. Приходится учитывать нюансы каждой среды (в том числе при «отлове» ошибок), писать код с учетом возможных вариантов, нанимать отдельных разработчиков или даже целые команды для версий под разные ОС.
Функциональность, быстродействие
Веб-приложение полностью зависит от браузера и технологий его работы. Поэтому есть ряд ограничений, например — в доступе к аппаратному обеспечению вашего устройства. Это и некоторые другие ограничения обойти невозможно (во всяком случае, сейчас). Но целый ряд задач можно решить по принципу «что нельзя переписать, можно надстраивать или расширять». Редакторы документов, изображений, аудио, видео, 3D графики; системы управления проектами; хранилища файлов; no-code конструкторы — успешно работают в браузерах. Инструменты быстрой интеграции сервисов, а также интерфейсные библиотеки еще больше расширяют существующие возможности.
Десктопное позволяет реализовать буквально любые функции — в этом оно однозначно превосходит web. Во всяком случае, полноценного онлайн аналога Photoshop или Sony Vegas еще никто не разработал. Системные утилиты — определенно сфера десктопной разработки. Как и программы, которые должны долго работать в фоновом режиме — например, чаты или торрент-клиенты — через браузер с ними просто неудобно будет работать. Также такое ПО чаще используется для специфических проектов, с нестандартными интерфейсами или функциями. Поэтому web разработка пока не представляет опасности для desktop программистов— эти технологии будут развиваться параллельно, просто под разные задачи.
По поводу скорости работы все не так однозначно, как может показаться. Несмотря на то, что браузерный клиент постоянно обменивается данными с сервером, быстродействие будет во многом будет зависеть от того, насколько грамотно он спроектирован, «чистоты» кода, возможностей оборудования, стабильности канала связи. Разница в быстродействии, которая очевидна при тестировании, зачастую незаметна для пользователей.
Безопасность
Веб-приложение, разработанное с использованием современных протоколов и средств защиты, способно полноценно обеспечивать сохранность данных. Однако на некоторые моменты разработчики не могут повлиять: браузер, облачный сервер, канал связи — могут повысить уровень безопасности за счет дополнительных средств проверки, но также снизить его за счет своих уязвимостей. Несомненный плюс для пользователей: такое ПО проще контролировать. Ограничения среды снижают вероятность, что оно скрыто получит доступ к файлам или запустит какой-либо процесс.
Десктопное настраивается более гибко, а значит — теоретически при его разработке можно предусмотреть все потенциальные уязвимости. На практике — вряд ли. Впрочем, сделать его полностью безопасным все же можно. Но только если устройство, на котором оно установлено, не будет никуда подключаться, даже к защищенной локальной сети. В противном случае — риск все равно будет.
Однозначно сказать, что безопаснее — сложно (если вообще возможно). На это влияют много факторов, прежде всего — человеческий. А ведь именно в защите от человеческого фактора, в различных его проявлениях, заключается смысл всех мер безопасности.
Но очевидно, что доверие к десктопному ПО выше. Некоторые организации принципиально не соглашаются работать в браузерах, многие пользователи все еще относятся к ним настороженно. Однако ситуация меняется — с развитием технологий растет лояльность людей к ним.
Наши выводы
Возможности браузерной разработки огромны, ее потенциал раскрыт далеко не полностью. Технологии развиваются, рынок ИТ растет, предлагая все новые приложения — при прочих равных пользователи будут выбирать web просто потому, что это удобнее. Если говорить о решениях для корпоративных клиентов, то тут браузерные приложения незаменимы. Они гибкие, универсальные, не требуют предварительной подготовки среды, позволяют сэкономить финансы компании, аппаратные ресурсы, время сотрудников.
Альтернативное мнение
Но рассмотрим другое мнение. Некоторые разработчики считают, что перспективы далеко не безоблачные. Слишком несовершенны технологии работы браузеров, слишком много некачественного ПО уже «накодили». Поэтому пользователи браузерных решений будут возвращаться обратно к десктопным. Такая тенденция будет продолжаться, пока разработчики браузеров массово используют Java Script. Только когда появится реальная альтернатива — можно будет делать прогнозы на будущее.
Веб-приложения уже сейчас подходят для решения многих задач — как бизнеса, так и обычных пользователей. Если вы решили разработать свое — используйте no-code платформу AppMaster.io.
Готовые блоки кода и визуальные инструменты для работы с ними помогут вам создать готовое веб-приложение и его серверную часть гораздо проще и быстрее, чем методы классического программирования!
Интернет-платформа
Интернет-платформа — это инструмент для создания и поддержки работоспособности сайта. Иными словами, это комплекс программных компонентов, упрощающих разработку веб-ресурса за счет использования готовых компонентов, а также обеспечивающий его стабильную функциональность. Существует несколько видов веб-платформ, предназначенных для реализации сайтов различного содержания и назначения.
Освойте профессию «Веб-разработчик»
Веб-разработчик с нуля
Веб-разработчик — мастер на все руки. Он создает программы и приложения для любых сфер и компаний: от небольшой кофейни до международных банков. Станьте специалистом, который создает востребованный продукт
Профессия / 12 месяцев
Веб-разработчик с нуля
Создавайте нужные любому бизнесу сервисы
Что такое платформа сайта?
Написание кода сайта (даже простого одностраничника или лендинга) с нуля сегодня практически не используется. На то есть несколько причин.
- Это сложная и трудоемкая работа. Она требует много времени, а также услуг высококлассных специалистов (программиста, верстальщика и т.д.), которых дефицит на рынке. А красивый, бесперебойно работающий и функциональный сайт нужен сегодня.
- Специалисты, осуществляющие техническую поддержку и продвижение веб-ресурса, со временем могут меняться. Если на смену создателю сайта придет другой работник, ему потребуется долгое время, чтобы вникнуть в код предшественника.
Поэтому более оптимальным является создание сайта на базе определенной платформы — то есть с помощью готовых программных инструментов:
- это ускоряет и упрощает разработку веб-ресурса, потому что фактически представляет собой его сборку из уже разработанных компонентов, шаблонов и т.д., на которые потом накладывается уникальный дизайн, разработанный уже индивидуально для конкретного заказчика;
- созданием интернет-платформ занимаются опытные программисты, дизайнеры и иные специалисты, которые регулярно вносят необходимые доработки в код, устраняют ошибки, добавляют новые функции и т.д. Кроме того, при смене специалиста, занимающегося обслуживанием и технической поддержкой сайта, его преемнику не придется изучать код от начала до конца — достаточно знать, на какой платформе он реализован.
Таким образом, интернет-платформу можно представить как строительную площадку для сайта с фундаментом, основными несущими конструкциями и инженерными системами, над которыми уже достраивается остальная часть здания — кровля, фасад и т.д., то есть непосредственно сам сайт. Более того, такой фундамент и основная постройка будут типовыми. На основе одной и той же платформы можно делать множество различных веб-ресурсов. Как и в архитектуре, такой подход существенно удешевляет создание сайтов.
Станьте веб-разработчиком и найдите стабильную работу на удаленке
Какие существуют платформы?
Есть несколько видов платформ, каждый из которых обладает своими особенностями, функционалом, преимуществами и недостатками. Выбор между ними определяется тем, какой именно сайт вам нужен, насколько широкими планируются его возможности и т.д.
Фреймворки. Такие интернет-платформы представляют собой каркас, на который «навешиваются» дополнительные функциональные блоки, интерфейс сайта и т.д. Именно фреймворк можно сравнить с «фундаментом» веб-ресурса, потому что его «стены», «крышу», «фасад» и другие элементы придется «достраивать» (то есть программировать) самостоятельно.
Тем не менее, это гораздо легче, чем писать весь код с нуля, поэтому даже на таких низкоуровневых системах создаются блоги, интернет-магазины, информационные порталы и другие веб-ресурсы. Более того, именно фреймворки лучше всего подходят для реализации крупных проектов или специализированных сервисов. Типичные представители веб-фрейворков — Django на языке Python, Express.js на Java Scipt, ASP.Net (использует специализированные языки Microsoft) и т.д.
Системы управления контентом (content management system — CMS). Это электронные платформы более высокого уровня, которые предоставляют разработчику весь комплект инструментов для создания и последующей поддержки сайта. В CMS уже есть все основные функциональные модули, необходимые для веб-ресурса того или иного типа. Разработчику остается лишь добавить или, наоборот, убрать их в режиме администратора через удобный визуальный редактор. То есть непосредственно написание кода сводится к минимуму — в основном для добавления нетиповых функций, дополнительных онлайн-форм и т.д. Впрочем, даже их можно добавить с помощью внешних подключаемых плагинов. Наиболее популярные CMS для разработки сайтов — 1С-Bitrix, NetCat, WordPress.
Читайте также Топ конструкторов сайтов 2023 года
Самое большое преимущество CMS в том, что поддерживать нормальную работу сайта может не только разработчик, но и сам собственник ресурса. Это особенно полезно при замене сотрудников — без штатного специалиста владелец сможет самостоятельно поддерживать ресурс в рабочем состоянии.
Единственный заметный недостаток CMS состоит в том, что разработчики таких платформ стремятся сделать их универсальными, то есть пригодными для создания сайтов различной сложности, направления и содержания. Из-за этого в них есть множество лишних функций, которые увеличивают потребление ресурсов, замедляют скорость работы сайта. Кроме того, владельцу ресурса приходится отдельно искать и покупать услуги хостинга.
SaaS-платформы (Software as a Service — ПО как услуга). Владельцы облачных онлайн-платформ предоставляют клиентам на условиях аренды доступ к сервисам, с помощью которых они создают собственный сайт. Преимущественно облачные сервисы используются для разработки простых интернет-ресурсов — блогов, информационных порталов, небольших интернет-магазинов. Основное преимущество платформ в том, что клиент получает весь комплекс услуг, необходимых для создания и технической поддержки сайта — хостинг, CMS, набор функций, дизайн-шаблоны и т.д. То есть можно сразу приступать к работе, для этого не нужно быть программистом. Достаточно просто собрать свой веб-ресурс в визуальном редакторе из готовых модулей, загрузить текст, картинки, видео. Наиболее распространенные конструкторы сайтов — Tilda, WIX, uCoz.
Недостатком таких платформ разработки веб-ресурсов является невозможность использовать свой дизайн (только предложенные в шаблонах) и добавлять дополнительные функции поверх тех, которые предусмотрены выбранной системой. Кроме того, при высокой нагрузке на облачный сервис сайт может начать тормозить или вовсе перестанет временно работать.
Какую интернет-платформу выбрать?
При выборе платформы для сайта нужно ориентироваться на следующие критерии.
- Тип сайта. Несмотря на то, что разработчики многих платформ стремятся сделать их максимально универсальными, на 100% это невозможно. Одни веб-системы больше заточены под интернет-магазины, другие — под информационные порталы, третьи — под блоги и т.д. Поэтому нужно сразу определиться с типом будущего сайта, продумать его функциональность и только потом подбирать подходящую платформу.
- Эксклюзивность сайта. Платформы, предлагающие готовые решения (CMS и конструкторы сайтов), не всегда позволяют учесть специфику будущего веб-ресурса. Если на нем планируется реализовать какие-то необычные пользовательские механики, эксклюзивный дизайн, уникальные функции, лучше подобрать подходящий веб-фреймворк. Если же планируется открыть простой интернет-магазин или блог, достаточно возможностей CMS и конструктора сайта.
- Бюджет. Создание и техническая поддержка сайта требуют денег и времени. И здесь веб-фреймворки, безусловно, проигрывают, потому что веб-ресурс на их основе будет стоить дорого. Наиболее финансово выгодны конструкторы сайтов — вам не придется нанимать специалиста, веб-ресурс можно «собрать» самому. Где-то между ними и фреймворками по затратам находятся CMS. Они тоже предлагают готовые решения, но для работы с ними все же потребуются услуги штатного сотрудника или аутсорсингового разработчика.
В любом случае, интернет-платформа — это оптимальный способ создать работающий, функциональный веб-ресурс. Она серьезно облегчает и ускоряет процесс разработки, уменьшает финансовые, временные, трудовые затраты. Необходимо только хорошо изучить особенности, возможности и ограничения конкретных платформ, чтобы правильно выбрать подходящую для конкретного сайта.
При подготовке материала использовались источники:
https://vc.ru/services/297762-desktopnoe-ili-veb-prilozhenie-plyusy-i-minusy