Веб-приложения
В этом уроке вы узнаете подробнее о том, что такое веб-приложение, как оно связано с веб-браузером и в чём особенность работы системного аналитика при разработке веб-приложений.
Веб-приложения
Веб-приложение — это приложение, доступ к которому осуществляется через веб-браузер.
Веб-браузер — это приложение, установленное на устройство, которое позволяет пользоваться ресурсами в сети Интернет, в том числе веб-сайтами и веб-приложениями.
Чем «веб-приложение» отличается от «веб-сайта»?
На самом деле чёткой границы между ними нет. Как правило, веб-сайтами называют справочно-информационные ресурсы, где можно узнать что-либо. Например, сайт-визитка с информацией о компании или личный сайт писателя с его библиографией — это веб-сайты. Веб-сайт может быть создан без написания программного кода и, как следствие, без участия разработчиков.
Веб-приложения позволяют пользователю выполнить какие-то действия: что-то оплатить, заказать, создать и прочее. Например, интернет-банк или онлайн фото-редактор — это уже веб-приложения. Для создания веб-приложений нужны разработчики.
При этом бывают и неоднозначные случаи. Новостной портал можно назвать как веб-сайтом (если смотреть на него с точки зрения читателя, который только просматривает новости), так и веб-приложением (если смотреть с точки зрения контент-менеджера, который публикует новости) — оба термина будут корректны.
Веб-браузер — клиент для веб-приложений. Чаще всего для работы с веб-приложениями необходимо подключение к сети Интернет — кроме ситуаций, когда вы работаете с веб-приложениями, которые подключены к внутренней сети организации без доступа в сеть Интернет. Например, это может быть корпоративный портал государственной компании.
Мы часто используем веб-приложения в повседневной жизни: онлайн-магазины одежды, новостные ленты, сервисы по поиску авиабилетов. Яндекс Практикум, в котором вы сейчас проходите курс, — это тоже веб-приложение, так как вы зашли на платформу через веб-браузер и продолжаете работу через него.
Веб-приложения очень популярны в наши дни. Поэтому скорее всего на новом месте работы системный аналитик будет иметь дело именно с веб-приложением.
Часть действий пользователей веб-приложения может обрабатывать сам веб-браузер. Через веб-приложение для рисования (например, https://pixlr.com/) мы можем попытаться нарисовать кота. При каждом движении «мыши» будет отображаться линия на экране — для её отображения нет необходимости отправлять запрос на сервер. На сервере мы лишь сохраним готовый рисунок.
Веб-браузеры
Среди самых популярных веб-браузеров в мире — Google Chrome, Safari, Mozilla Firefox, Opera, Edge и другие. В России, по данным Яндекс Метрики, в последнее время наиболее популярны веб-браузеры Сhrome, Яндекс Браузер, Safari.
Знание о том, какие браузеры популярны среди пользователей вашего веб-приложения, позволит правильно приоритизировать дефекты и доработки в системе. Например, вы обнаружили дефект в веб-браузере Edge: кнопка онлайн-заказа частично перекрывает товар. Вы можете отложить данную задачу в бэклог, если поймёте, что пользователи редко используют веб-браузер Edge для работы вашего приложения — всего 1 человек на 10 тыс. всех пользователей. А вот если аналогичная проблема обнаружится в популярном веб-браузере, например в Chrome, то эту задачу стоит выполнить как можно быстрее, так как больше пользователей это заметят.
Веб-браузеры — тоже приложения, а значит, их так же создают команды разработки. Веб-браузеры отличаются друг от друга не только набором функций и внешним оформлением, но и особенностями реализации (с точки зрения UX и UI). Иногда различия в поведении веб-браузеров могут влиять на реализацию веб-приложений.
Например, при разработке веб-приложения возникла потребность отобразить таблицу с данными заказа, закрепив шапку таблицы вверху страницы.
При прокрутке шапка должна оставаться на месте, а строки таблицы — менять друг друга.
В веб-браузере Safari у фронтенд-разработчика не получилось закрепить шапку таблицы при отображении, а в Chrome это получилось сделать легко.
Это не единственный пример. У браузеров отличаются возможности отрисовки тех или иных данных, и фронтенд-разработчик должен всегда учитывать это в своей работе.
Преимущества и недостатки веб-приложений
Возможности и преимущества:
- Веб-приложения доступны с любого устройства с веб-браузером. Можно одновременно пользоваться веб-приложением со смартфона, домашнего компьютера и планшета.
- Все изменения в веб-приложении сразу доступны пользователям. Нет необходимости просить пользователей скачать файл или сделать какие-то особые действия, чтобы получить доступ к новой функциональности.
- Веб-приложения имеют ограниченный доступ к данным на устройстве пользователя. А значит не могут без дополнительного разрешения получить доступ к файлам и ресурсам на компьютере или смартфоне. Можно считать их более безопасными в использовании.
Ограничения и недостатки:
- Веб-приложения чаще всего требуют подключения к сети Интернет (или другой сети, в которой размещено веб-приложение). Нельзя полноценно работать с веб-приложением, например, в самолёте.
- Команда разработки не полностью контролирует то, что увидит пользователь. Если у пользователя устаревшая версия веб-браузера или он настроил масштаб 200% и увеличил размер шрифта, веб-приложение может выглядеть совсем не так, как ожидали разработчики.
- Веб-приложения ограничены возможностями веб-браузера: нельзя сделать сверх того, что может обработать веб-браузер. Например, средства редактирования фото через веб-приложения имеют меньше доступных возможностей для манипуляции с изображением, чем полноценная десктоп-версия.
- Веб-браузер может хранить только ограниченный набор данных, который можно использовать для работы веб-приложения. Например, при заполнении анкеты на сайте, можно сохранить введённые пользователем значения, тогда при случайной перезагрузке страницы значения автоматически появятся в этих полях. Чтобы это сделать, не нужно отправлять запрос на сервер, все необходимые данные сохранит у себя локально веб-браузер. Но хранить в веб-браузере что-то большее уже не получится.
Особенности работы системного аналитика над веб-приложениями
В мире много различных веб-браузеров и их версий. На старте работы над веб-приложением важно договориться о том, какие веб-браузеры и какие версии мы будем поддерживать.
0,29% пользователей мира до сих пор используют веб-браузер Internet Explorer 7, который был выпущен более 15 лет назад. Многие современные веб-приложения будут некорректно работать в Internet Explorer 7.
Создать веб-приложение, которое поддерживает в том числе Internet Explorer 7, существенно сложнее — больше работы будет и у фронтенд-разработчика, и у инженера по тестированию.
Стоит ли это делать ради 0,29% пользователей — нужно решать для каждого веб-приложения отдельно.
Над клиентской частью веб-приложения (которая работает в веб-браузере на компьютере пользователя) и над серверной частью работают разные разработчики — фронтенд- и бэкенд- соответственно. Системный аналитик должен понимать, что реализуется в веб-браузере, а что на сервере, как минимум, для того, чтобы знать, с кем из разработчиков это можно обсудить.
Например, в веб-приложении нужно отобразить таблицу с возможностью поиска.
Есть два варианта реализации:
- При каждом изменении критериев поиска или при переходе к следующей странице веб-браузер направляет запрос к серверу. Сервер возвращает требуемые данные.
- Веб-браузер сразу запрашивает все данные с сервера. Поиск и переключение между страницами реализуются на стороне веб-браузера без дополнительных обращений к серверу.Какой из вариантов выбрать? Оба имеют право на жизнь. Системный аналитик должен принять решение вместе с командой на этапе проектирования.