16 Августа, 2013

5 причин не любить web-интерфейсы

Игорь Агурьянов
Преимущества веб-интерфейсов вполне понятны - доступ из любого места и отсутствие необходимости устанавливать интерфейс-консоль на машины конечных пользователей. Но разработчики их стали лепить, ко многим продуктам, где недостатки (имхо) намного перевешивают достоинства. Об этих самых недостатках мы и поговорим.

1. "А в каком браузере запускаете?"

Отсутствие необходимости установки консоли несколько нивелируется необходимостью использовать определенные браузер. Кроссплатформенность таких вот решений весьма относительная. Как правило, все работает IE постарше, часто поддерживается Mozilla Firefox... а вот с остальными, в большинстве случаев, все печально. Еще страшнее, когда требуется доустановка каких-то надстроек/плагинов и изменение настроек самого браузера. Встает вопрос, а не проще было бы установить везде консоль (пусть даже ногами) - если все равно приходится вносить изменения в систему. Тем более, для пользователя запуск интерфейса в 99% случае это запуск ярлычка на РС.

Статистика использования браузеров в Рунете (2012г)
Вспоминается случай из моей практики, когда на организацию закупили браузерную СЭД и прикрутили к ней подписание документов с помощью КриптоПро CSP... Соответственно, мы мужественно бегали по пользователям и устанавливали им криптопровайдер, при этом меняя настройки IE и устанавливая оный как браузер по умолчанию... И объяснять потом пользователю, что у всех все работает и проблемы на его стороне:

2. "Доступ отовсюду!"

Здесь уже ИБшникам стоит задуматься - а нужен ли он "доступ отовсюду". Во-первых, раз есть возможность с любой машины получить доступ к корпоративной системе, значит ее проще и сломать с любой машины. Во-вторых, в адресной строке видна (как правило) логика запросов в БД, а значит - "Привет SQL-инъекции". В-третьих, в ряде случаев добыть консоль управления и брутфорсить через нее задачка посложнее, чем через браузер. 

Ну и еще... если в системе, к которой пользователь удаленно может получить доступ с любой машины, содержится информация ограниченного доступа, то зафиксировать источник утечки мы вообще не сможем... 

3. Нагрузка и быстродействие

На самом деле первое, что приходит в голову, когда речь идет о минусах веб-интерфейсов, это перегруженные Java-скриптами странички, которые потребляют кучу ресурсов. А все потому, что без Ajax работать все будет долго... Еще, конечно, стоит вспомнить о том, что JS - открытый код, что не всегда удовлетворяет требованиям безопасности (но это в причину 2). А в причину 3, даже не смотря на Ajax веб-интерфейсы в целом медленнее консолей.

Если пользователь делает не много операций, то может ничего страшного в разнице в скорости работы и нет... Но если много... если 20 минут рабочего времени тратиться на ожидание загрузки элементов... Если таких пользователей 24, то (если арифметика меня не подводит), можно считать, что работает только 23, а последний ожидает загрузки :) Я утрирую, конечно, но проблема такая есть...

4. Работа с папками и файлами

Ctrl+C и Ctrl+V? А не тут то было :) Браузер перехватывает многие привычные сочетания клавиш. Про Drag&Drop тоже лучше забыть... Чтобы открыть файл, нужно его скачать... в общем, жутко неприятные вещи... И наоборот, привычные "браузерные" функции работают, зачастую, некорректно (кнопочки "назад", "вперед", "обновить" и т.п.) И это все при том, что (вероятно для повышения юзабилити и юзерфредли), многие вендоры пытаются сделать свои интерфейсы "похожими на привычные"... 

5. Модальные окна 


Отдельная песня. Если действия в модальном окне должны влиять на родительское, а мы видим модальное окно в виде новой вкладки браузера, то ничего хорошего из этого не получится. Впрочем, эту проблему призвана решить концепция SPI . И даже можно было бы вычеркнуть эту причину, но заголовок "4 причины не любить web-интерфейсы" выглядит уже не так привлекательно :)

Резюмируя... я не противник веб-интерфейсов. Более того, я согласен с тем, что они необходимы в случаях, когда нужно обеспечить доступ к системе большого количества никак не связанных пользователей или в случаях, когда действительно может потребоваться доступ с любого компьютера (веб-почта, например). Эти аргументы, правда, на мой взгляд, постепенно сводятся на нет с бурным развитием мобильных устройств... Но клепать веб-интерфейсы вендоры, увы, почему-то продолжают.
или введите имя

CAPTCHA
17 Августа, 2013
Основная причина во всех описанных случаях - это очевидная криворукость разработчиков. Я не думаю, что ситуация бы сильно изменилась, если бы эти же разработчики разработывали обычное клиентское приложение... Ну а причина, по которой вендоры предпочитают иметь веб-морду вместо клиентского ГУЯ - это стоимость разработки, которая значительно ниже для веб-морды
0 |
  • Поделиться
  • Ссылка
18 Августа, 2013
Валерий, Вы, полагаю, во многом правы. Просто статистически "кривые" веб-морды мне, почему-то встречались чаще, чем клиентские GUI
0 |
ldd
20 Августа, 2013
Подбирать реализацию надо исходя из задачи. На extjs крутится довольно много серьзных контор, и нормальный разработчик на сенчу отнюдь не дешев. Статика кешируется, опять же есть модульные лоадеры. Модальное окно в новой вкладке? вы из какого года? По-моему единственно разумный довод - безопасность, не могу спорить, т.к. не мой профиль, но с таким же успехом отключить кабель из сети и работать только в интранете. И даже в таком случае клиент-серверное приложение будет на порядок удобнее в поддержке и управлении, чем десктопное (в большинстве случаев).
0 |
  • Поделиться
  • Ссылка