Будь-розробник з практичним досвідом добре уявляє собі, що таке API. Але пояснити це людям, не посвяченим у тонкощі професії, часто виявляється складно.
Уявіть собі механічний годинник: складний механізм з шестерень і маятників, який регулює рух стрілок на циферблаті. Щоб вникнути в роботу механізму потрібно багато часу. Однак повсякденне використання годин вимагає лише короткого інструктажу: годинна, хвилинна і секундна стрілки - для визначення часу, і коліщатко - для підведення годин. Якщо перейти на мову програмування, стрілки і коліщатко - і є API годин. Він приховує складний механізм під набором простих і зрозумілих елементів.
Технічна довідка
API - це абревіатура від Application Programming Interface - набір визначень взаємодії різнотипного програмного забезпечення. API - це, як правило (але не обов'язково), метод абстракції між низькорівневим і високорівневих програмним забезпеченням.
API використовується не тільки для спрощення роботи зі складними механізмами. Часто його використовують для створення єдиного принципу роботи з різними за своєю структурою компонентами. За прикладом далеко ходити не треба: будь-яка операційна система дозволяє нам однаково легко працювати з жорсткими дисками, компакт-дисками та флешками. Але ж «під капотом» запис і читання даних з цих носіїв вимагають виконання абсолютно різних операцій. API ховає від нас ці відмінності.
Ще одна область застосування API - обмеження функціонала, доступного стороннім програмам. Саме в такому вигляді API використовуються в інтернеті: розробник не може отримати прямий доступ до бази даних користувачів Facebook, однак він може запросити обмежений набір інформації через API соцмережі.
API не завжди є загальнодоступними: деякі розробники апаратного забезпечення продають доступ до своїх API. Так надходять, наприклад, розробники ігрових консолей. Це дозволяє їм повністю контролювати доступ до своєї платформі, а ще приносить додатковий дохід.