1 added
1 removed
Original
2026-01-01
Modified
2026-02-26
1
<p><strong>API - это программный интерфейс приложения. Он состоит из набора правил и методов для обмена данными. Расскажем все о функциях и особенностях API.</strong></p>
1
<p><strong>API - это программный интерфейс приложения. Он состоит из набора правил и методов для обмена данными. Расскажем все о функциях и особенностях API.</strong></p>
2
<h2>Содержание</h2>
2
<h2>Содержание</h2>
3
<ul><li><a>Что такое API и как он работает</a></li>
3
<ul><li><a>Что такое API и как он работает</a></li>
4
<li><a>Почему API называют интерфейсом</a></li>
4
<li><a>Почему API называют интерфейсом</a></li>
5
<li><a>Использование API</a></li>
5
<li><a>Использование API</a></li>
6
<li><a>Функции API: что можно делать с его помощью</a></li>
6
<li><a>Функции API: что можно делать с его помощью</a></li>
7
<li><a>Преимущества работы с API</a></li>
7
<li><a>Преимущества работы с API</a></li>
8
<li><a>Как вызвать API и как с ним работать</a></li>
8
<li><a>Как вызвать API и как с ним работать</a></li>
9
<li><a>Примеры использования API</a></li>
9
<li><a>Примеры использования API</a></li>
10
<li><a>Особенности современного API</a></li>
10
<li><a>Особенности современного API</a></li>
11
</ul><h2>Что такое API и как он работает</h2>
11
</ul><h2>Что такое API и как он работает</h2>
12
<p>API - это аббревиатура от английского Application Programming Interface, что переводится как программный интерфейс приложения. Далеким от IT людям проще всего объяснить это понятие как контракт или договор.</p>
12
<p>API - это аббревиатура от английского Application Programming Interface, что переводится как программный интерфейс приложения. Далеким от IT людям проще всего объяснить это понятие как контракт или договор.</p>
13
<p>Когда разработчик пишет API, он составляет договор - какой набор функций будет у программы и как к ним можно получить доступ. В набор входит:</p>
13
<p>Когда разработчик пишет API, он составляет договор - какой набор функций будет у программы и как к ним можно получить доступ. В набор входит:</p>
14
<ul><li>Список возможных операций.</li>
14
<ul><li>Список возможных операций.</li>
15
<li>Данные, которые могут передавать пользователи.</li>
15
<li>Данные, которые могут передавать пользователи.</li>
16
<li>Данные, которые они будут получать от программы.</li>
16
<li>Данные, которые они будут получать от программы.</li>
17
</ul><p>На основе определенных API работают большинство сервисов, которыми мы пользуемся каждый день.</p>
17
</ul><p>На основе определенных API работают большинство сервисов, которыми мы пользуемся каждый день.</p>
18
<p>Например, на сайтах магазинов есть карты - на них отмечены торговые точки или пункты доставки. Каждый из таких ресурсов не разрабатывает свои собственные картографические сервисы. Они берут API сторонней компании и встраивают их в свои сайты. А пользователи обращаются к этим API через графический интерфейс.</p>
18
<p>Например, на сайтах магазинов есть карты - на них отмечены торговые точки или пункты доставки. Каждый из таких ресурсов не разрабатывает свои собственные картографические сервисы. Они берут API сторонней компании и встраивают их в свои сайты. А пользователи обращаются к этим API через графический интерфейс.</p>
19
<p>У чего есть свои API:</p>
19
<p>У чего есть свои API:</p>
20
<ul><li>У всех операционных систем. Через API реализован ввод данных с клавиатуры, вывод на экран, хранение данных. Разработчики не работают с устройствами напрямую, а пользуются API, которое им предоставляет ОС</li>
20
<ul><li>У всех операционных систем. Через API реализован ввод данных с клавиатуры, вывод на экран, хранение данных. Разработчики не работают с устройствами напрямую, а пользуются API, которое им предоставляет ОС</li>
21
<li>У программных библиотек, утилит и фреймворков. Благодаря им разработчик может может использовать уже готовый код для своих потребностей.</li>
21
<li>У программных библиотек, утилит и фреймворков. Благодаря им разработчик может может использовать уже готовый код для своих потребностей.</li>
22
<li>У веб-сервисов. В этом случае API помогает интегрировать одни сервисы в другие. У многих крупных проектов открытый API и его могут использовать все желающие.</li>
22
<li>У веб-сервисов. В этом случае API помогает интегрировать одни сервисы в другие. У многих крупных проектов открытый API и его могут использовать все желающие.</li>
23
</ul><p>Чаще всего, под API подразумевают именно третий вариант.</p>
23
</ul><p>Чаще всего, под API подразумевают именно третий вариант.</p>
24
<h2>Почему API называют интерфейсом</h2>
24
<h2>Почему API называют интерфейсом</h2>
25
<p>Обычно под интерфейсом понимают графический интерфейс. Например, фронтенд сайта, с которым взаимодействуют пользователи. Но это понятие шире.</p>
25
<p>Обычно под интерфейсом понимают графический интерфейс. Например, фронтенд сайта, с которым взаимодействуют пользователи. Но это понятие шире.</p>
26
<p><strong>Интерфейс - граница между объектами, способ контакта или договор.</strong></p>
26
<p><strong>Интерфейс - граница между объектами, способ контакта или договор.</strong></p>
27
<p>В программировании интерфейсы работают по принципу инкапсуляции, то есть представляют собой "черный ящик". Реализация или внутренний механизм работы скрыт от глаз пользователя.</p>
27
<p>В программировании интерфейсы работают по принципу инкапсуляции, то есть представляют собой "черный ящик". Реализация или внутренний механизм работы скрыт от глаз пользователя.</p>
28
<p>Он подает определенные данные на вход, а на выходе получает ответ. Как именно система обрабатывает данные, пользователь не видит. Это обеспечивает надежность системы: посторонние не могут повлиять на ее работу.</p>
28
<p>Он подает определенные данные на вход, а на выходе получает ответ. Как именно система обрабатывает данные, пользователь не видит. Это обеспечивает надежность системы: посторонние не могут повлиять на ее работу.</p>
29
<p>Для взаимодействия с программным продуктом можно использовать:</p>
29
<p>Для взаимодействия с программным продуктом можно использовать:</p>
30
<ul><li>GUI - graphical user interface, то есть графический пользовательский интерфейс. Им будет, например, эта страница нашего сайта.</li>
30
<ul><li>GUI - graphical user interface, то есть графический пользовательский интерфейс. Им будет, например, эта страница нашего сайта.</li>
31
<li>API - программный интерфейс, он работает без графики. А пользователи могут обращаться к нему либо через GUI, либо через вызов определенных функций. Первое делают обычные пользователи, второе - разработчики и тестировщики.</li>
31
<li>API - программный интерфейс, он работает без графики. А пользователи могут обращаться к нему либо через GUI, либо через вызов определенных функций. Первое делают обычные пользователи, второе - разработчики и тестировщики.</li>
32
</ul><h2>Использование API</h2>
32
</ul><h2>Использование API</h2>
33
<p>Принцип использования программных интерфейсов прост. Рассмотрим самую распространенную ситуацию с веб-сервисом. Например, с теми же картами.</p>
33
<p>Принцип использования программных интерфейсов прост. Рассмотрим самую распространенную ситуацию с веб-сервисом. Например, с теми же картами.</p>
34
<p>Программист разрабатывает приложение, создает бэкенд, то есть внутреннюю логику. Если он хочет, чтобы этот продукт могли использовать пользователи, он составляет API.</p>
34
<p>Программист разрабатывает приложение, создает бэкенд, то есть внутреннюю логику. Если он хочет, чтобы этот продукт могли использовать пользователи, он составляет API.</p>
35
<p>В него входит набор правил и инструкций, по которым можно работать с этим приложением. Его можно оставить в открытом доступе или продавать всем желающим.</p>
35
<p>В него входит набор правил и инструкций, по которым можно работать с этим приложением. Его можно оставить в открытом доступе или продавать всем желающим.</p>
36
<p>Сторонние разработчики могут подключиться к API по ссылке и взаимодействовать с ним при помощи запросов.</p>
36
<p>Сторонние разработчики могут подключиться к API по ссылке и взаимодействовать с ним при помощи запросов.</p>
37
<p>При этом соблюдается принцип "черного ящика". Третьи лица, получая доступ к API, не знают, как программа работает изнутри. Они не могут изменить ее функциональность или украсть интеллектуальную собственность.</p>
37
<p>При этом соблюдается принцип "черного ящика". Третьи лица, получая доступ к API, не знают, как программа работает изнутри. Они не могут изменить ее функциональность или украсть интеллектуальную собственность.</p>
38
<p>Они могут только посылать туда данные через запросы и получать в ответ другие данные. Принципы этой работы указаны в документации.</p>
38
<p>Они могут только посылать туда данные через запросы и получать в ответ другие данные. Принципы этой работы указаны в документации.</p>
39
<h2>Функции API: что можно делать с его помощью</h2>
39
<h2>Функции API: что можно делать с его помощью</h2>
40
<p>Функциональность зависит от характеристик программного продукта. Например, API карты будет показывать местоположение пользователя и нужные ему объекты. А API платежной системы - будет помогать проводить транзакции.</p>
40
<p>Функциональность зависит от характеристик программного продукта. Например, API карты будет показывать местоположение пользователя и нужные ему объекты. А API платежной системы - будет помогать проводить транзакции.</p>
41
<p>В плане функциональности, необходимо учитывать три параметра:</p>
41
<p>В плане функциональности, необходимо учитывать три параметра:</p>
42
<ul><li>Возможности самой программы.</li>
42
<ul><li>Возможности самой программы.</li>
43
<li>Методы для вызова функции.</li>
43
<li>Методы для вызова функции.</li>
44
<li>Данные, которые API отправит на сервер в процессе взаимодействия.</li>
44
<li>Данные, которые API отправит на сервер в процессе взаимодействия.</li>
45
-
</ul><p>Пр��граммисты могут создавать какие угодно программные интерфейсы. Но есть стандарты, по которым они работают и есть архитектура. От нее будет зависеть, как именно API работает с данными.</p>
45
+
</ul><p>Программисты могут создавать какие угодно программные интерфейсы. Но есть стандарты, по которым они работают и есть архитектура. От нее будет зависеть, как именно API работает с данными.</p>
46
<h3>Виды API</h3>
46
<h3>Виды API</h3>
47
<p>Есть несколько популярных решений, которые используют большинство приложений.</p>
47
<p>Есть несколько популярных решений, которые используют большинство приложений.</p>
48
<ul><li>REST</li>
48
<ul><li>REST</li>
49
</ul><p>Это архитектурный подход, который задает определенные требования к функциональности и внутреннему устройству. Сейчас REST - один из самых распространенных стандартов API.</p>
49
</ul><p>Это архитектурный подход, который задает определенные требования к функциональности и внутреннему устройству. Сейчас REST - один из самых распространенных стандартов API.</p>
50
<p>REST - не протокол, а набор рекомендаций, которым может следовать разработчик. Он работает по принципу клиент-серверной архитектуры и зачастую использует протокол HTTP.</p>
50
<p>REST - не протокол, а набор рекомендаций, которым может следовать разработчик. Он работает по принципу клиент-серверной архитектуры и зачастую использует протокол HTTP.</p>
51
<p>Основная особенность REST - отсутствие состояния. На сервере не сохраняют информацию о прошлых взаимодействиях с клиентом, а в каждом запросе должны быть все данные для его обработки.</p>
51
<p>Основная особенность REST - отсутствие состояния. На сервере не сохраняют информацию о прошлых взаимодействиях с клиентом, а в каждом запросе должны быть все данные для его обработки.</p>
52
<p>Для экономии ресурсов в REST используют кэширование. Оно производится на стороне клиента, что ускоряет производительность и уменьшает нагрузку на сервера.</p>
52
<p>Для экономии ресурсов в REST используют кэширование. Оно производится на стороне клиента, что ускоряет производительность и уменьшает нагрузку на сервера.</p>
53
<p>API на основе REST используют унифицированный интерфейс, что упрощает их интеграцию в другие сервисы.</p>
53
<p>API на основе REST используют унифицированный интерфейс, что упрощает их интеграцию в другие сервисы.</p>
54
<ul><li>SOAP</li>
54
<ul><li>SOAP</li>
55
</ul><p>Это протокол доступа к объектам, который также может работать через HTTP. В качестве языка взаимодействия между сервером и клиентом используют XML. Сейчас эту технологию считают устаревшей.</p>
55
</ul><p>Это протокол доступа к объектам, который также может работать через HTTP. В качестве языка взаимодействия между сервером и клиентом используют XML. Сейчас эту технологию считают устаревшей.</p>
56
<p>Программные интерфейсы на SOAP более формализованы, у них есть четкие спецификации, поэтому взаимодействие с ними максимально предсказуемо.</p>
56
<p>Программные интерфейсы на SOAP более формализованы, у них есть четкие спецификации, поэтому взаимодействие с ними максимально предсказуемо.</p>
57
<p>Этот тип архитектуры имеет встроенную обработку ошибок, что обеспечивает ее надежность. А за безопасность отвечает интеграция с протоколами WS-Security. Стандарт обеспечивает, например, шифрование и цифровые подписи. Также SOAP поддерживает транзакции, совместимые с ACID.</p>
57
<p>Этот тип архитектуры имеет встроенную обработку ошибок, что обеспечивает ее надежность. А за безопасность отвечает интеграция с протоколами WS-Security. Стандарт обеспечивает, например, шифрование и цифровые подписи. Также SOAP поддерживает транзакции, совместимые с ACID.</p>
58
<p>Сейчас такие программные интерфейсы используют для корпоративных приложений и финансовых организаций.</p>
58
<p>Сейчас такие программные интерфейсы используют для корпоративных приложений и финансовых организаций.</p>
59
<ul><li>GraphQL</li>
59
<ul><li>GraphQL</li>
60
</ul><p>Эта технология - отдельная среда выполнения для API и одновременно с этим собственный язык запросов. GraphQL создали в Facebook, чтобы преодолеть недостатки архитектуры REST.</p>
60
</ul><p>Эта технология - отдельная среда выполнения для API и одновременно с этим собственный язык запросов. GraphQL создали в Facebook, чтобы преодолеть недостатки архитектуры REST.</p>
61
<p>Основная особенность таких программных интерфейсов - возможность запрашивать избранные типы данных, которые необходимы в настоящий момент.</p>
61
<p>Основная особенность таких программных интерфейсов - возможность запрашивать избранные типы данных, которые необходимы в настоящий момент.</p>
62
<p>GraphQL позволяет объединять несколько запросов в один, что уменьшает количество обращений к серверу.</p>
62
<p>GraphQL позволяет объединять несколько запросов в один, что уменьшает количество обращений к серверу.</p>
63
<ul><li>WebSocket</li>
63
<ul><li>WebSocket</li>
64
</ul><p>Это еще один стандарт архитектуры API. Его главная особенность - возможность обеспечивать непрерывную двухстороннюю связь между клиентом и сервером.</p>
64
</ul><p>Это еще один стандарт архитектуры API. Его главная особенность - возможность обеспечивать непрерывную двухстороннюю связь между клиентом и сервером.</p>
65
<p>Этот программный интерфейс используют в сервисах, которые критически зависят от мгновенного обмена данными между клиентами. Например, в онлайн-играх, мессенджерах или в приложениях для торговли на биржах.</p>
65
<p>Этот программный интерфейс используют в сервисах, которые критически зависят от мгновенного обмена данными между клиентами. Например, в онлайн-играх, мессенджерах или в приложениях для торговли на биржах.</p>
66
<ul><li>gRPC API</li>
66
<ul><li>gRPC API</li>
67
</ul><p>Этот стандарт архитектуры разработала компания Google. В его основе лежит принцип использования вызова функции как основного способа связи между сервером и клиентом.</p>
67
</ul><p>Этот стандарт архитектуры разработала компания Google. В его основе лежит принцип использования вызова функции как основного способа связи между сервером и клиентом.</p>
68
<p>К достоинствам программных интерфейсов на основе gRPC API относят лаконичное содержание и простоту в коммуникации.</p>
68
<p>К достоинствам программных интерфейсов на основе gRPC API относят лаконичное содержание и простоту в коммуникации.</p>
69
<p>Это решение стало популярным для создания связей между отдельными элементами в приложениях с микросервисной архитектурой. Она предполагает, что пользователи работают с продуктом, который выглядит монолитным, но на самом деле обращаются к нескольким микросервисам, которые быстро и эффективно взаимодействуют друг с другом.</p>
69
<p>Это решение стало популярным для создания связей между отдельными элементами в приложениях с микросервисной архитектурой. Она предполагает, что пользователи работают с продуктом, который выглядит монолитным, но на самом деле обращаются к нескольким микросервисам, которые быстро и эффективно взаимодействуют друг с другом.</p>
70
<h2>Преимущества работы с API</h2>
70
<h2>Преимущества работы с API</h2>
71
<p>Использование сторонних API - одна из основ современной разработки. Такой подход, с одной стороны, позволяет программистам продавать свой интеллектуальный продукт и зарабатывать на его использовании.</p>
71
<p>Использование сторонних API - одна из основ современной разработки. Такой подход, с одной стороны, позволяет программистам продавать свой интеллектуальный продукт и зарабатывать на его использовании.</p>
72
<p>С другой стороны, дает возможность применять чужие решения на своих проектах. Благодаря API разработчикам не нужно каждый раз изобретать велосипед, а можно использовать готовый, стабильный и многократно протестированный продукт.</p>
72
<p>С другой стороны, дает возможность применять чужие решения на своих проектах. Благодаря API разработчикам не нужно каждый раз изобретать велосипед, а можно использовать готовый, стабильный и многократно протестированный продукт.</p>
73
<p>Преимущества использования API:</p>
73
<p>Преимущества использования API:</p>
74
<ol><li>Безопасность. Небольшим компаниям трудно соблюдать все правила информационной безопасности при разработке программного продукта. Вместо этого можно воспользоваться готовыми API, которые создали крупные корпорации. Например, так работают модули платежных систем на сайтах.</li>
74
<ol><li>Безопасность. Небольшим компаниям трудно соблюдать все правила информационной безопасности при разработке программного продукта. Вместо этого можно воспользоваться готовыми API, которые создали крупные корпорации. Например, так работают модули платежных систем на сайтах.</li>
75
<li>Экономия денег. Разрабатывать с нуля всю функциональность приложения - сложно и дорого. Программисты постоянно пользуются готовыми решениями. Например, фреймворками - каркасами приложений или библиотеками - кусками готового кода. Через API они могут использоватьподключить готовый модуль, который уже реализовали сторонние разработчики.</li>
75
<li>Экономия денег. Разрабатывать с нуля всю функциональность приложения - сложно и дорого. Программисты постоянно пользуются готовыми решениями. Например, фреймворками - каркасами приложений или библиотеками - кусками готового кода. Через API они могут использоватьподключить готовый модуль, который уже реализовали сторонние разработчики.</li>
76
<li>Интеграция с популярными сервисами. Разработчик может написать собственную систему авторизации на сайте, но не собственную картографию. Также зачастую есть необходимость подключить к сайту решения партнеров. Например, интернет-магазины интегрируют у себя модули служб доставки. За все эти взаимодействия отвечают API.</li>
76
<li>Интеграция с популярными сервисами. Разработчик может написать собственную систему авторизации на сайте, но не собственную картографию. Также зачастую есть необходимость подключить к сайту решения партнеров. Например, интернет-магазины интегрируют у себя модули служб доставки. За все эти взаимодействия отвечают API.</li>
77
</ol><h2>Как вызвать API и как с ним работать</h2>
77
</ol><h2>Как вызвать API и как с ним работать</h2>
78
<p>Конкретный способ вызова API указывают в документации к нему. Если смотреть с теоретической точки зрения, есть несколько способов вызовов.</p>
78
<p>Конкретный способ вызова API указывают в документации к нему. Если смотреть с теоретической точки зрения, есть несколько способов вызовов.</p>
79
<ul><li>Внутри системы</li>
79
<ul><li>Внутри системы</li>
80
</ul><p>Отдельные части одной программы взаимодействуют друг с другом. Это происходит как раз на уровне API. Такие способы вызова прописывают в коде программы.</p>
80
</ul><p>Отдельные части одной программы взаимодействуют друг с другом. Это происходит как раз на уровне API. Такие способы вызова прописывают в коде программы.</p>
81
<ul><li>Между двумя системами</li>
81
<ul><li>Между двумя системами</li>
82
</ul><p>Это самая популярная ситуация, когда к сайту подключают стороннее API. Например, если вы хотите интегрировать сервис подсказок в ваш интернет-магазин, то это будет работать следующим образом:</p>
82
</ul><p>Это самая популярная ситуация, когда к сайту подключают стороннее API. Например, если вы хотите интегрировать сервис подсказок в ваш интернет-магазин, то это будет работать следующим образом:</p>
83
<ul><li>Пользователь вводит букву.</li>
83
<ul><li>Пользователь вводит букву.</li>
84
<li>Фронтенд сайта отправляет ее к стороннему API.</li>
84
<li>Фронтенд сайта отправляет ее к стороннему API.</li>
85
<li>API обрабатывает ее внутри и, обращаясь к своей базе, находит в ней подходящие подсказки.</li>
85
<li>API обрабатывает ее внутри и, обращаясь к своей базе, находит в ней подходящие подсказки.</li>
86
<li>API посылает их сайту в ответ, тот обрабатывает и показывает пользователю.</li>
86
<li>API посылает их сайту в ответ, тот обрабатывает и показывает пользователю.</li>
87
</ul><p>Вот такие шаги нужно пройти для вызова программного интерфейса, притом, что для пользователя они будут абсолютно не видны.</p>
87
</ul><p>Вот такие шаги нужно пройти для вызова программного интерфейса, притом, что для пользователя они будут абсолютно не видны.</p>
88
<ul><li>Обращение к API напрямую</li>
88
<ul><li>Обращение к API напрямую</li>
89
</ul><p>Иногда пользователь может самостоятельно обращаться к API без применения графического интерфейса, как в предыдущем случае. Зачастую это делают тестировщики ПО.</p>
89
</ul><p>Иногда пользователь может самостоятельно обращаться к API без применения графического интерфейса, как в предыдущем случае. Зачастую это делают тестировщики ПО.</p>
90
<p>На проектах бывают ситуации, когда бэкенд сайта уже написали, а фронтенд еще нет. Тогда тестируют уже готовое API при помощи специальных инструментов. Самый популярный - Postman, это программа позволяет посылать запросы к программным интерфейсам и получать от них ответы.</p>
90
<p>На проектах бывают ситуации, когда бэкенд сайта уже написали, а фронтенд еще нет. Тогда тестируют уже готовое API при помощи специальных инструментов. Самый популярный - Postman, это программа позволяет посылать запросы к программным интерфейсам и получать от них ответы.</p>
91
<ul><li>Обращение через автотесты</li>
91
<ul><li>Обращение через автотесты</li>
92
</ul><p>Тестировщики не всегда обращаются к API вручную. Иногда для этого используют специальные программы - автотесты. Это набор кода, который имитирует действие реального пользователя.</p>
92
</ul><p>Тестировщики не всегда обращаются к API вручную. Иногда для этого используют специальные программы - автотесты. Это набор кода, который имитирует действие реального пользователя.</p>
93
<p>Автотесты могут работать как через графический интерфейс, так и через программный. С их помощью можно быстро проверить API на предмет возможных ошибок.</p>
93
<p>Автотесты могут работать как через графический интерфейс, так и через программный. С их помощью можно быстро проверить API на предмет возможных ошибок.</p>
94
<h2>Примеры использования API</h2>
94
<h2>Примеры использования API</h2>
95
<p>API - часть бэкенда сайта и большинство современных ресурсов используют сторонние программные интерфейсы в своем составе.</p>
95
<p>API - часть бэкенда сайта и большинство современных ресурсов используют сторонние программные интерфейсы в своем составе.</p>
96
<ul><li>Навигация</li>
96
<ul><li>Навигация</li>
97
</ul><p>Мы уже упоминали картографические сервисы. Самые популярные в России - "Яндекс.Карты" и "2.ГИС". Они предоставляют разработчикам бесплатный доступ к своим API.</p>
97
</ul><p>Мы уже упоминали картографические сервисы. Самые популярные в России - "Яндекс.Карты" и "2.ГИС". Они предоставляют разработчикам бесплатный доступ к своим API.</p>
98
<p>С его помощью можно подключить карты к своему сайту. Пользователь будет заходить на страницу с контактами, где указаны адреса торговых точек. А API картографических сервисов будет показывать, где они располагаются.</p>
98
<p>С его помощью можно подключить карты к своему сайту. Пользователь будет заходить на страницу с контактами, где указаны адреса торговых точек. А API картографических сервисов будет показывать, где они располагаются.</p>
99
<ul><li>Метеорология</li>
99
<ul><li>Метеорология</li>
100
</ul><p>У каждого из нас в смартфоне есть программы, которые отображают погоду. Этих данных нет у владельцев приложения, они запрашивают их у разных метеослужб.</p>
100
</ul><p>У каждого из нас в смартфоне есть программы, которые отображают погоду. Этих данных нет у владельцев приложения, они запрашивают их у разных метеослужб.</p>
101
<p>Для упрощения этого процесса разработали API. Программа автоматически получает данные о местоположении устройства, затем делает запрос в метеослужбу и отдает ответ в приложение. А пользователь узнает, что через пару минут в районе его нахождения начнется метель.</p>
101
<p>Для упрощения этого процесса разработали API. Программа автоматически получает данные о местоположении устройства, затем делает запрос в метеослужбу и отдает ответ в приложение. А пользователь узнает, что через пару минут в районе его нахождения начнется метель.</p>
102
<ul><li>Авторизация через сторонние сервисы</li>
102
<ul><li>Авторизация через сторонние сервисы</li>
103
</ul><p>Для маркетологов критически важно, чтобы потенциальный клиент мог как можно быстрее получить доступ к нужному ему функционалу. И, одновременно, им необходимо иметь контакты для отслеживания клиентов.</p>
103
</ul><p>Для маркетологов критически важно, чтобы потенциальный клиент мог как можно быстрее получить доступ к нужному ему функционалу. И, одновременно, им необходимо иметь контакты для отслеживания клиентов.</p>
104
<p>Решить эту проблемы смогли сервисы авторизации. Сейчас на многие сайты можно войти через аккаунты социальных сетей или почтовых сервисов. Достаточно нажать одну кнопку и не нужно заполнять несколько полей, придумывать пароль и т.д.</p>
104
<p>Решить эту проблемы смогли сервисы авторизации. Сейчас на многие сайты можно войти через аккаунты социальных сетей или почтовых сервисов. Достаточно нажать одну кнопку и не нужно заполнять несколько полей, придумывать пароль и т.д.</p>
105
<ul><li>Календари</li>
105
<ul><li>Календари</li>
106
</ul><p>Календари, встроенные в мобильные платформы, получают информацию из различных сервисов. Вы наверняка обращали внимание, когда назначенная встреча начинает отображаться в них.</p>
106
</ul><p>Календари, встроенные в мобильные платформы, получают информацию из различных сервисов. Вы наверняка обращали внимание, когда назначенная встреча начинает отображаться в них.</p>
107
<p>Благодаря использованию API многие сервисы по планированию обмениваются информацией. Это дает возможность пользователям видеть свои встречи или заметки в нескольких платформах сразу.</p>
107
<p>Благодаря использованию API многие сервисы по планированию обмениваются информацией. Это дает возможность пользователям видеть свои встречи или заметки в нескольких платформах сразу.</p>
108
<ul><li>Авиабилеты</li>
108
<ul><li>Авиабилеты</li>
109
</ul><p>Сайты-агрегаторы по продаже авиабилетов предоставляют доступ к своим API сторонним компаниям. Это может быть полезно, так как стоимость перелетов регулярно меняется из-за динамического ценообразования.</p>
109
</ul><p>Сайты-агрегаторы по продаже авиабилетов предоставляют доступ к своим API сторонним компаниям. Это может быть полезно, так как стоимость перелетов регулярно меняется из-за динамического ценообразования.</p>
110
<p>Если вы хотите рассказать пользователям сайта, сколько стоят авиабилеты по определенному направлению, можно использовать API агрегатора.</p>
110
<p>Если вы хотите рассказать пользователям сайта, сколько стоят авиабилеты по определенному направлению, можно использовать API агрегатора.</p>
111
<p>Он будет в режиме реального времени показывать актуальные цены.</p>
111
<p>Он будет в режиме реального времени показывать актуальные цены.</p>
112
<h2>Особенности современного API</h2>
112
<h2>Особенности современного API</h2>
113
<p>По способу доступа все программные интерфейсы можно разделить на три типа.</p>
113
<p>По способу доступа все программные интерфейсы можно разделить на три типа.</p>
114
<ol><li>Публичные. У них полностью открытый код и разработчики могут использовать их функционал бесплатно. Такие API распространяют с целью продвижения. Например, агрегаторы авиабилетов разрешают встраивать информацию о ценах на сторонние сайты, потому что заинтересованный пользователь может перейти по ссылке и совершить покупку.</li>
114
<ol><li>Публичные. У них полностью открытый код и разработчики могут использовать их функционал бесплатно. Такие API распространяют с целью продвижения. Например, агрегаторы авиабилетов разрешают встраивать информацию о ценах на сторонние сайты, потому что заинтересованный пользователь может перейти по ссылке и совершить покупку.</li>
115
<li>Партнерские. Их создают для продажи клиентам или партнерам компании. Обычно за использование таких API взимают плату.</li>
115
<li>Партнерские. Их создают для продажи клиентам или партнерам компании. Обычно за использование таких API взимают плату.</li>
116
<li>Внутренние. Программные интерфейсы разрабатывают внутри компании и применяют для интеграции с другими собственными продуктами.</li>
116
<li>Внутренние. Программные интерфейсы разрабатывают внутри компании и применяют для интеграции с другими собственными продуктами.</li>
117
</ol><p>Теперь вы знаете, что такое API, зачем они нужны и какими бывают. Эта информация пригодится всем IT-специалистам. С API регулярно взаимодействуют программисты и тестировщики.</p>
117
</ol><p>Теперь вы знаете, что такое API, зачем они нужны и какими бывают. Эта информация пригодится всем IT-специалистам. С API регулярно взаимодействуют программисты и тестировщики.</p>