API и .doc (договорённость о форме)
Это не соперники и не соседи: они из разных частей системы. API — про то, как одна программа говорит с другой «вживую», по сети. .doc — про то, как байты лежат в файле на диске, чтобы их можно было потом прочитать.
На пальцах
Представь большую канцелярию, где работают по правилам. Отдел продаж хочет узнать у отдела склада, есть ли товар. Они договорились: запрос всегда идёт по бланку «наименование, количество, дата», а ответ всегда приходит в виде «да/нет, сколько штук, где лежит». Этот бланк и есть API — договорённость между двумя отделами о том, в каком виде обмениваться.
В той же канцелярии бухгалтерия раз в месяц кладёт в шкаф толстую папку «Отчёт за март». Внутри — таблицы, цифры, подписи. Через год любой, кто откроет папку, должен понять, что где лежит. Способ, которым всё это сложено в папке, — это и есть .doc: договорённость о том, как байты лежат внутри файла, чтобы Word потом смог их прочесть.
Что делает каждый
API (Application Programming Interface — программный интерфейс приложения) — это описание того, как одной программе обратиться к другой. Какую команду послать, по какому адресу, в каком формате передать данные и что ждать в ответ. Например, когда ты в приложении телефона нажимаешь «показать погоду», приложение отправляет по API запрос серверу погоды и получает ответ — температуру, ветер, прогноз.
.doc — это расширение файлов старого формата Microsoft Word, который компания использовала до 2007 года. Это описание того, как внутри файла лежат байты: где заголовок, где текст, где картинки, где форматирование. Когда Word открывает такой файл, он читает по этим правилам и собирает документ на экране. Формат был закрытым: Microsoft не публиковала полную спецификацию, поэтому другим программам приходилось угадывать, как его читать. В 2007 году Microsoft перешла на открытый формат .docx.
В чём разница
| API | .doc | |
|---|---|---|
| Про что | Как одна программа обращается к другой | Как байты лежат внутри файла |
| Кто договаривается | Две разные программы — отправитель и получатель | Одна программа Word — сегодня записала, завтра сама же прочитала |
| Где встречается | В сети, между сервисами | На диске, в файле |
| Кто придумал | Разработчики конкретных сервисов, у каждого свой API | Microsoft, для своего Word |
| Открытость | Обычно описан в документации, чаще открыто | Исторически закрытый, спецификацию Microsoft не публиковала |
| Общее у обоих | Соглашение о форме данных, чтобы другая сторона поняла | То же |
Что из этого следует
- Их не выбирают «одно вместо другого»: они про разное. API — про обмен «вживую» между программами. .doc — про хранение на диске.
- Когда программа хочет получить данные от другой программы, нужен API. Когда она хочет сохранить документ и потом открыть, нужен формат файла — .doc, .docx, .pdf и так далее.
- Иногда они встречаются вместе: API может вернуть ответ в виде файла .doc — «скачай отчёт в формате Word». Тогда API — это способ доставки, а .doc — способ упаковки того, что доставлено.