Десктоп-приложения
В этом уроке вы узнаете, что такое десктоп-приложение, как оно связано с операционной системой компьютера, какие у десктоп-приложений ограничения и возможности.
Что такое десктоп-приложение
Десктопное приложение, или десктоп-приложение (desktop — настольный), — это приложение, которое устанавливается на компьютер (стационарный или ноутбук). Среди популярных десктоп-приложений — офисные пакеты (например, Microsoft Office или Libre Office) и антивирусы (например, Kaspersky). Десктоп-приложением можно считать любую программу, устанавливаемую на компьютер.
В отличие от веб-приложений десктопные приложения можно использовать только на том устройстве, на котором они установлены. Это значит, что веб-приложение отобразится для вас с любого устройства (в веб-браузере на смартфоне или в веб-браузере на компьютере), тогда как десктопным приложением, например Microsoft Office Word, вы сможете воспользоваться только на компьютере. Чтобы отредактировать некий документ в ворде на смартфоне, придётся поставить отдельное мобильное приложение.
Мы постоянно пользуемся десктоп-приложениями в повседневной жизни. Например, прямо сейчас для прохождения курса «Системный аналитик» вы используете веб-браузер — очередное десктоп-приложение. Предположим, у вас Яндекс Браузер — чтобы начать им пользоваться, вам понадобилось пройти по ссылке, где лежит дистрибутив, скачать его и установить на ваш домашний компьютер. Необходимость установки — одно из ключевых отличий десктоп-приложения от веб-приложения.
Десктоп-приложения могут работать как с доступом в сеть Интернет, так и без него. Например, онлайн-игры, типа Counter Strike. Приложение устанавливается на компьютер, а для того, чтобы сыграть в игру с друзьями, вам понадобится доступ в интернет, но, если его нет, вы сможете сыграть против ботов без подключения к сети.
Количество десктоп-приложений уступает числу веб-приложений. Всё потому, что десктоп-приложение гораздо сложнее создавать и сопровождать, то есть заниматься его поддержкой и обновлением. Как правило, десктоп-приложения создают крупные компании, которые рассчитывают на большой тираж. Для собственных нужд десктоп-приложения создаются довольно редко, тогда как разработку веб-приложения себе может позволить любой ресторан или магазин (например, для заказа еды или товаров).
Взаимодействие десктопных приложений с операционной системой компьютера
Для работы десктоп-приложений нужна операционная система. Сейчас самые популярные из них, по данным Яндекс Метрики: Microsoft Windows, Linux, Apple MacOS.
Операционная система взаимодействует с оборудованием: монитором, жёстким диском, оперативной памятью и другими устройствами. Десктоп-приложение вызывает функции операционной системы (API), то есть вызывает команды, которые необходимо выполнить. У разных операционных систем разный API, поэтому десктоп-приложение, созданное для одной операционной системы (например, Windows), не будет работать в другой операционной системе (MacOS). Это значит, что при разработке десктоп-приложения нужно заранее определиться, в какой операционной системе оно будет работать. В этом ещё одно отличие десктоп-приложений от веб-приложений. Веб-браузеры, которые нужны для доступа к веб-приложениям, несмотря на различия между собой, поддерживают единые стандарты. Веб-приложение, проверенное в одном веб-браузере, будет запускаться и в другом, хоть и с некоторыми отличиями.
Возможности и преимущества десктоп-приложений
- Можно использовать все подключённые к сети периферийные устройства — принтеры, сканеры, устройства виртуальной реальности и другие.
- Можно использовать все возможности компьютера — например, для реализации сложной 3D-графики или сложных вычислений.
- Можно работать без подключения к сети Интернет (например, в игровом приложении, если вы играете один на один с компьютером).
- Можно не только отображать данные (как в веб-приложениях), но ещё хранить их и обрабатывать.
- Десктоп-приложения могут быстрее реагировать на действия пользователя, что бывает важно, например, в играх.
Скорость реакции веб-приложения на действия пользователей часто определяется скоростью подключения к сети Интернет, переход на другую страницу может занимать несколько секунд (независимо от того, насколько быстро работает само веб-приложение). Десктоп-приложение же может реагировать на действия пользователя в течение нескольких десятков миллисекунд. Проще говоря, не успеете и глазом моргнуть, как всё загрузится (средняя частота моргания — раз в 10 секунд).
Ограничения и недостатки десктоп-приложений
- Зависимость от операционной системы (или даже версии операционной системы): приложение, созданное для одной операционной системы, не будет работать в другой.
- Наличие системных требований: для работы десктоп-приложения компьютер пользователя должен удовлетворять определённым требованиям, например, по объёму оперативной памяти или по версии операционной системы.
- Устанавливать и обновлять десктоп-приложения сложнее, чем веб-приложения.
- Приложение доступно только на устройстве, на котором оно установлено. Если у пользователя, кроме домашнего компьютера, есть и рабочий компьютер, нужно отдельно установить приложение и там, и там.
- Сложность сопровождения — на работу десктоп-приложения могут влиять настройки компьютера пользователя, другие установленные на нём приложения (например, антивирусы), специфика оборудования и прочее. У службы технической поддержки чаще всего нет прямого доступа к компьютеру пользователя, поэтому её сотрудникам сложно разобраться, почему приложение работает не так или не работает совсем.
Особенности работы с десктоп-приложениями
В каждой операционной системе есть типовые интерфейсные решения — то, как должен быть организован пользовательский интерфейс приложения. Для сохранения единообразия пользовательского опыта десктоп-приложение должно соблюдать эти интерфейсные решения, а системный аналитик должен знать о них.
Например, в операционной системе Microsoft Windows знак закрытия окна — «крестик» в правом верхнем углу. В MacOS — красный кружок с появляющимся крестиком в левом верхнем углу. В операционной системе Linux вообще несколько оконных менеджеров, в каждом из которых такая пиктограмма может занимать своё место.
Десктоп-приложение требует более тщательного тестирования перед выпуском. Если веб-приложения можно обновлять хоть несколько раз в день (пользователи могут ничего и не заметить), то требование к пользователю постоянно обновлять десктоп-приложение может вызвать недовольство и непонимание.
В десктоп-приложении гораздо сложнее понять, как пользователь в нём работает и какие проблемы у него возникают — вся информация остаётся на устройстве пользователя и, в отличие от веб-приложений, десктопные приложения не собирают информацию разработчикам в фоновом режиме.
В веб-приложениях, благодаря развитым средствам веб-аналитики (например, Яндекс Метрика или Google Analytics), можно точно сказать, какие действия совершают пользователи, в каком порядке они их выполняют, сколько секунд на это уходит и в какой момент они закрывают приложение. Отследив это, можно оперативно улучшить приложение на этапе эксплуатации. В десктоп-приложениях подобные исследования нужно проводить до релиза.