HDG объясняет: что такое API?

В Интернете, наполненном запутанными и незнакомыми аббревиатурами(confusing and unfamiliar acronyms) , легко запутаться. Одна веб-аббревиатура, которую вы, возможно, слышали, но никогда не чувствовали вдохновения, — это «API».

Что такое API ? API — это аббревиатура от Application Programming Interface и название набора подпрограмм и протоколов, которые значительно упрощают процесс создания программных приложений.

Простой способ взглянуть на API — это дорожная карта, которая сообщает компонентам программного обеспечения, как взаимодействовать. Без использования API исходный код мог бы выглядеть беспорядочным, запутанным беспорядком.

Однако API(APIs) -интерфейсы сложны и требуют большего, чем краткое обобщение. В этой статье давайте рассмотрим, как работают API(APIs) и какие сайты и сервисы их используют.

Что такое API и как он работает?(What Is An API and How Does It Work?)

Теперь, когда мы установили, что API — это набор подпрограмм, которые указывают программному обеспечению правильное направление, как именно все это работает?

Лучший способ объяснить основные функции API — привести реальный пример. Службы доставки еды , такие как (Food)GrubHub , сейчас невероятно популярны, поэтому давайте обсудим, как может работать код таких мобильных приложений.

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

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

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

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

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

Какие типы API существуют?(What Types Of APIs Are There?)

Существует несколько различных типов протоколов API , но три самых популярных — это SOAP ( простой протокол доступа к объектам(Simple Object Access Protocol) ), REST ( передача репрезентативного состояния(Representational State Transfer) ) и RPC ( удаленный вызов процедур(Remote Procedure Call) ).

API-интерфейсы SOAP(SOAP APIs)

SOAP был впервые представлен в конце 1990-х годов и позволил приложениям легко обмениваться ресурсами с помощью сетевых подключений. SOAP опирается на стандартные протоколы, такие как HTTP и SMTP , что позволяет использовать его практически в любой среде из-за популярности таких протоколов.

Его главная сила в том, что он широко используется и зарекомендовал себя. Если он не сломан, не чините его.

REST API(REST APIs)

REST был представлен в 2000 году Роем Филдингом(Roy Fielding) . Его непосредственная цель состояла в том, чтобы действовать как ответ на многие из проблем, которые были созданы широким распространением SOAP .

Подобно SOAP , REST полагается на HTTP для передачи информации между приложениями. Однако одно важное отличие, которое отличает его от SOAP , который требует передачи данных в формате данных XML , заключается в том, что он поддерживает JSON . JSON — это формат данных, который, по мнению многих, легче читать и писать. Кроме того, REST API(REST APIs) могут кэшировать данные, что значительно повышает производительность.

Согласно отчету Cloud Elements за 2017 год, на REST сейчас приходится более 80% всех API(APIs) .

RPC-API(RPC APIs)

API-интерфейсы RPC(RPC APIs) бывают разных видов, но, как мы узнали из API- интерфейсов REST(REST APIs) , JSON — очень популярный формат данных, поэтому JSON-RPC — самый популярный.

JSON-RPC — это протокол, который лучше всего подходит для минималистов и пользователей, которые полагаются на простоту своего API . Его область действия намного уже по сравнению с SOAP и REST , и он очень ограничен в своей гибкости и наборе команд, но для некоторых разработчиков лучше меньше, да лучше.

Существуют и другие типы API на основе RPC , такие как gRPC, но JSON-RPC — лучший выбор, если вашим приоритетом является простота реализации.

Кто использует API?(Who Uses APIs?)

Разработчики любого типа, будь то фронтенд или бэкенд, должны иметь опыт работы с API(APIs) . Что касается веб-сайтов или веб-сервисов, практически все основные игроки имеют какой-либо доступный API , наиболее очевидным из которых является Windows .

Поскольку Microsoft Windows — самая популярная операционная система на планете, вполне естественно, что разработчикам приложений потребуется набор рекомендаций по взаимодействию с ее пользовательским интерфейсом. Без доступа к Windows API программирование приложения, в значительной степени зависящего от взаимодействия с операционной системой, станет серьезной головной болью.

Существуют тысячи API(APIs) , некоторые бесплатные, а некоторые платные. Вот лишь несколько примеров, на которые стоит обратить внимание:

  • Google Play Developer API : задачи публикации и управления приложениями, связанные с Google Play
  • API- интерфейсы Skyscanner(Skyscanner APIs)(Skyscanner APIs) : API(APIs) -интерфейсы для путешествий,связанные с рейсами, арендой автомобилей и т
  • Twilio API : позволяет(Allows) программно отправлять и получать телефонные звонки.
  • Discord API : позволяет пользователям создавать ботов, которые делают Discord службой обмена сообщениями, какой она является сегодня.
  • IPinfo API : данные (: )об IP-(On-the-fly IP) адресе и геолокации на лету для вашего веб-сайта или приложения

API(APIs) -интерфейсы являются одним из ключевых соединителей для некоторых из крупнейших и наиболее важных веб-сайтов и приложений. Хотя рядовой пользователь может и не увидеть преимуществ, которые предоставляют API(APIs) , они являются находкой для разработчиков и веб-сервисов.



About the author

Я веб-разработчик с опытом работы более 10 лет. Я специализируюсь на разработке Chrome OS и работал над широким спектром проектов от небольших стартапов до компаний из списка Fortune 500. Я также являюсь экспертом по учетным записям пользователей и семейной безопасности и разработал несколько успешных приложений для Android.



Related posts