Десктопное или веб-приложение: что выбрать бизнесу
Кратко
Веб-приложение открывается в браузере на любом устройстве и обновляется сразу у всех — для большинства бизнес-сервисов это лучший выбор. Десктопное приложение (программа для Windows, macOS и Linux) нужно, когда важны работа без интернета, доступ к оборудованию и локальным файлам. PWA — промежуточный вариант: сайт, который устанавливается как приложение и частично работает офлайн.
«Десктопное или веб-приложение?» — этот вопрос обычно возникает, когда бизнесу нужна своя система: учёт заказов, склад, работа с документами или программа для клиентов. Ошибка на старте обходится дорого: переделать продукт под другую платформу почти всегда сложнее, чем сразу выбрать правильно. Разберём три варианта — десктоп, веб и PWA — простым языком.
Что такое десктопное приложение простыми словами?
Десктопное приложение — это программа, которую устанавливают на компьютер с Windows, macOS или Linux и запускают без браузера, как Telegram Desktop или бухгалтерскую программу. Веб-приложение открывается в браузере по ссылке и ничего не требует устанавливать: так работают CRM, личные кабинеты и админ-панели сайтов.
Между ними есть третий вариант — PWA (Progressive Web App). Это веб-приложение, которое можно «установить» прямо из браузера: у него появляются иконка и отдельное окно, а при правильной настройке часть функций работает без интернета.
Чем десктопное приложение отличается от веб-приложения и PWA?
Главные различия — в установке, обновлениях, работе без интернета и доступе к оборудованию.
| Критерий | Веб-приложение | PWA | Десктоп |
|---|---|---|---|
| Установка | Не нужна, достаточно ссылки | Из браузера, в пару кликов | Через установщик |
| Обновления | Сразу у всех | Автоматически, как у сайта | Через автообновление |
| Без интернета | Не работает | Частично, из кэша | Полностью или с синхронизацией |
| Оборудование и файлы | В пределах возможностей браузера | В пределах возможностей браузера | Полный доступ через возможности ОС |
| Устройства | Любые, включая телефоны | Любые, включая телефоны | Компьютеры |
| Что добавляет затрат | Сервер и хостинг | То же плюс офлайн-режим | Сборки под три ОС, подпись кода и автообновление |
Когда бизнесу нужна программа для компьютера?
Программа для компьютера нужна, когда работа не должна останавливаться без интернета или когда нужен прямой доступ к оборудованию и файлам. Типичные случаи:
- нестабильный интернет — склад, производство, выездная точка: данные сохраняются локально и синхронизируются, когда появляется связь;
- оборудование — принтеры этикеток, сканеры штрихкодов, весы, устройства на COM-портах;
- тяжёлые локальные файлы — чертежи, фото, видео, большие выгрузки, которые неудобно гонять через браузер;
- продукт для клиентов — программа, которую вы распространяете с установщиком.
Если это ваш случай, смотрите разработку десктопных приложений: одна кодовая база для Windows, macOS и Linux, один установщик и автообновление.
Когда лучше выбрать веб-приложение?
Веб-приложение лучше, когда сотрудники и клиенты работают с разных устройств и из разных мест, а интернет есть. Для большинства бизнес-задач это вариант по умолчанию.
Плюсы веба: ничего не нужно устанавливать, обновление на сервере сразу получают все, система открывается и с ноутбука, и с телефона, а поддерживать приходится одну версию. Доступами тоже проще управлять: ушёл сотрудник — отключили его аккаунт, и ничего не нужно удалять с его компьютера.
Например, собственные админ-панели для iron-group.kz в Астане и barsogroup.kz я сделал именно веб-приложениями: в них заходят из браузера, без установки. Такие проекты относятся к веб-разработке. Если сотрудникам важнее работать с телефона, стоит рассмотреть и мобильное приложение.
Когда достаточно PWA?
PWA достаточно, когда нужны иконка на рабочем столе, быстрый запуск и базовая работа без сети, но не нужен глубокий доступ к системе. Это самый недорогой способ получить ощущение приложения, если веб-версия всё равно планируется.
Ограничения тоже есть: возможности PWA зависят от браузера и операционной системы. Доступ к USB-устройствам и последовательным портам из браузера поддерживается не везде, а на iPhone и iPad у PWA больше ограничений, чем на Android и компьютерах. Если без оборудования или надёжного офлайна не обойтись, нужен десктоп.
Как понять, какой вариант нужен именно вам?
Ответьте на четыре вопроса — обычно этого хватает, чтобы выбор стал очевиден.
- Будут ли люди работать без интернета? Если да и простой недопустим — десктоп. Если офлайн нужен изредка и в простых сценариях, можно начать с PWA.
- Нужны ли оборудование или локальные файлы? Принтеры этикеток, сканеры, весы, большие файлы на диске — аргумент в пользу десктопа.
- С каких устройств работают пользователи? Если среди них телефоны и планшеты, подойдут веб, PWA или мобильное приложение.
- Кто пользователи — ваши сотрудники или внешние клиенты? Внешним клиентам проще отправить ссылку, чем просить установить программу, поэтому для них веб обычно выигрывает.
Если на первые два вопроса ответ «нет», почти всегда выгоднее веб-приложение.
Можно ли сделать десктоп- и веб-версию из одного кода?
Во многом да. Electron позволяет писать десктопные программы на тех же технологиях, что и сайты: HTML, CSS, JavaScript и TypeScript. Поэтому интерфейс и часть логики можно использовать и в веб-версии.
Внутри Electron работают движок Chromium и Node.js, благодаря чему одна кодовая база запускается на Windows, macOS и Linux. На Electron построены, например, Visual Studio Code и десктопный Slack. У подхода есть цена: установщик весит больше, чем у нативной программы, потому что включает браузерный движок. Для большинства бизнес-инструментов это некритично.
Отдельно стоит заложить подпись кода: без неё Windows и macOS показывают пользователю предупреждения при установке. Для macOS нужны аккаунт Apple Developer и нотаризация, для Windows — сертификат подписи кода.
Что дешевле в разработке и поддержке?
Обычно дешевле веб: одна версия, обновление на сервере, никаких установщиков. Десктоп дороже в распространении — сборки под три системы, подпись, автообновление, — но окупается там, где без офлайна или оборудования не обойтись.
Для ориентира (цены в долларах, USD): сайты у меня начинаются от $500, а стоимость веб-приложения зависит от набора функций и определяется после брифа. Десктопный пакет MVP стоит от $1000 — ключевые функции, чистый интерфейс и один установщик для трёх систем. «Стандарт» (от $2000) добавляет бэкенд с базой данных, авторизацию, автообновление и админ-панель. Полноценный офлайн с синхронизацией, интеграции и ежемесячная поддержка — это пакет «Сложный», его стоимость считается индивидуально.
Если сомневаетесь, что выбрать, опишите задачу в брифе: я, Ибрагим Алиев (codeyev), отвечу в течение 24 часов и предложу вариант, который решит её без лишних затрат.
Часто задаваемые вопросы
Как обновляются десктопные программы?
Через автообновление: программа сама проверяет, вышла ли новая версия, скачивает её и устанавливает, обычно при перезапуске. У меня автообновление входит в десктопные пакеты начиная со «Стандарта». Без него пришлось бы рассылать новый установщик каждому пользователю.
Можно ли начать с веб-приложения, а десктоп добавить позже?
Да, и это один из плюсов веб-технологий: интерфейс и часть логики веб-версии можно перенести в Electron, а не писать программу заново. Разумный путь — начать с веба и добавить десктоп, когда появится реальная потребность в офлайне или оборудовании.
Будет ли программа работать на Mac и Linux, а не только на Windows?
Да. Программа на Electron собирается из одной кодовой базы для Windows, macOS и Linux, поэтому заказывать три отдельных приложения не нужно.
Можно ли связать десктопную программу с моей базой данных?
Да. Программу можно подключить к вашему существующему API, бэкенду или базе данных, чтобы она работала с теми же данными, что и сайт или другие системы компании.