API — это аббревиатура от Application Programming Interface, программного посредника, который позволяет двум приложениям взаимодействовать друг с другом. Каждый раз, когда вы используете такое приложение, как Facebook, отправляете мгновенное сообщение или проверяете погоду на своем телефоне, вы используете API.

Что такое пример API?

Когда вы используете приложение на своем мобильном телефоне, оно подключается к Интернету и отправляет данные на сервер. Затем сервер извлекает эти данные, интерпретирует их, выполняет необходимые действия и отправляет обратно на ваш телефон. Затем приложение интерпретирует эти данные и представляет вам нужную информацию в удобочитаемом виде. Вот что такое API — все это происходит через API.

Чтобы лучше объяснить это, давайте возьмем знакомый пример.

Представьте, что вы сидите за столиком в ресторане с выбором блюд на выбор. Кухня – это часть «системы», которая будет готовить ваш заказ. Чего не хватает, так это важной связи, чтобы передать ваш заказ на кухню и доставить еду обратно к вашему столу. Вот тут-то и появляется официант или API. Официант — это мессенджер — или API — который принимает ваш запрос или заказ и сообщает кухне — системе — что делать. Затем официант возвращает вам ответ; в данном случае это еда.

Вот реальный пример API. Возможно, вы знакомы с процессом поиска авиабилетов в Интернете. Как и в ресторане, у вас есть множество вариантов на выбор, включая разные города, даты отправления и возвращения и многое другое. Давайте представим, что вы бронируете рейс на сайте авиакомпании. Вы выбираете город и дату отправления, город и дату возвращения, класс обслуживания, а также другие переменные. Чтобы забронировать рейс, вы взаимодействуете с веб-сайтом авиакомпании, чтобы получить доступ к их базе данных и узнать, доступны ли какие-либо места на эти даты и какова может быть стоимость.

Однако что, если вы не пользуетесь сайтом авиакомпании — каналом, который имеет прямой доступ к информации? Что делать, если вы пользуетесь туристической онлайн-службой, такой как Kayak или Expedia, которая собирает информацию из нескольких баз данных авиакомпаний?

Туристический сервис в данном случае взаимодействует с API авиакомпании. API — это интерфейс, который, подобно вашему услужливому официанту, может быть запрошен этой туристической онлайн-службой для получения информации из базы данных авиакомпании для бронирования мест, вариантов багажа и т. д. Затем API принимает ответ авиакомпании на ваш запрос и доставляет его правильно. вернуться к онлайн-сервису путешествий, который затем покажет вам самую последнюю и актуальную информацию.

Что API также обеспечивает, так это уровень безопасности

Данные вашего телефона никогда не будут полностью доступны для сервера, и точно так же сервер никогда не будет полностью открыт для вашего телефона. Вместо этого каждый обменивается небольшими пакетами данных, делясь только тем, что необходимо — например, заказывая еду на вынос. Вы говорите в ресторане, что вы хотели бы съесть, они говорят вам, что им нужно взамен, а затем, в конце концов, вы получаете свою еду.

API стали настолько ценными, что составляют большую часть доходов многих предприятий. Крупные компании, такие как Google, eBay, Salesforce.com, Amazon и Expedia, — это лишь некоторые из компаний, которые зарабатывают на своих API. Экономика API относится к этому рынку API.

Современный API

На протяжении многих лет то, что такое «API», часто описывало какой-либо общий интерфейс подключения к приложению. Однако совсем недавно современные API приобрели некоторые характеристики, делающие их чрезвычайно ценными и полезными:

  • Современные API соответствуют стандартам (как правило, HTTP и REST), которые удобны для разработчиков, легко доступны и широко понятны.
  • К ним относятся скорее как к продуктам, чем как к коду. Они предназначены для использования определенной аудиторией (например, разработчиками мобильных устройств), они задокументированы, и их версии создаются таким образом, чтобы пользователи могли иметь определенные ожидания в отношении их обслуживания и жизненного цикла.
  • Поскольку они гораздо более стандартизированы, они имеют гораздо более строгую дисциплину в отношении безопасности и управления, а также отслеживаются и управляются для обеспечения производительности и масштабирования.
  • Как и любой другой программный продукт, современный API имеет свой собственный жизненный цикл разработки программного обеспечения (SDLC), включающий проектирование, тестирование, создание, управление и управление версиями. Кроме того, современные API хорошо задокументированы для использования и управления версиями.

Источник: mulesoft.com.