Пока мы говорили только о классических веб-приложениях — страницах гипертекста, отображаемых в браузере. Классическое веб-приложение отдает браузеру только страницы — такое приложение часто называют веб-сайтом. В этом уроке мы узнаем, как они устроены и какие интерфейсы там используются.
Как работают приложения
Современные сложные веб-приложения чаще всего ведут себя иначе, чем веб-сайты:
- Пользователь вводит адрес приложения в браузере
- В ответ сервер единожды отдает HTML-страницу
- Дальше используется JavaScript — страница сама отвечает за отображение данных, которые не встроены в разметку страницы. Данные загружаются с сервера отдельными запросами от страницы к API
API (Application Programming Interface или «Программный интерфейс приложения») — это протокол взаимодействия между вашим приложением и другими программами. API не отвечает за общение приложения и пользователя. Вместо этого пользователь обычно использует отдельную программу-клиент, которая обращается к серверу по необходимости.
Этим программа-клиент отличается от браузера, который запрашивает веб-страницу, как только пользователь введет URL или кликнет ссылку.
Более того, одно такое приложение-клиент может использовать несколько разных API. Причем не все из этих API даже предоставляются тем же сервером, который отдал первоначальную страницу! Например, таким образом один сайт может одновременно показывать новости из Twitter, карту Google Maps и встроенное YouTube-видео — весь этот контент запрашивается у соответствующих сервисов именно через API.
Еще один распространенный пример API — это вход на сайт с помощью какой-либо соцсети. В этом случае взаимодействие между клиентом (браузером) и серверами может быть достаточно сложным.
Современный веб немыслим без множества разных API. Они позволяют компаниям делать хорошо одно дело — например, карты, хранение фото или аутентификацию. При этом любой разработчик может использовать эти готовые наработки в своих приложениях. А в итоге выигрывают все — и пользователи, и автор приложения, и владельцы API, зарабатывающие на своем контенте.
Дополнительные материалы
Остались вопросы? Задайте их в разделе «Обсуждение»
Вам ответят команда поддержки Хекслета или другие студенты
- Статья «Как учиться и справляться с негативными мыслями»
- Статья «Ловушки обучения»
- Статья «Сложные простые задачи по программированию»
- Вебинар «Как самостоятельно учиться»
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.