Страницы

Поиск по вопросам

среда, 5 февраля 2020 г.

Чем отличается api от sdk?

#api #терминология #sdk


вроде и то и то предоставляет доступ к какому-либо функционалу
    


Ответы

Ответ 1



SDK - это набор функционала(библиотек) и утилит для разработки. Собственно SDK и предоставляет реализацию некоторого API, это оболочка API's, которая упрощает работу для разработчиков. API: набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением для использования во внешних программных продуктах это интерфейс, похоже на спецификацию телефонной системы или электропроводки в вашем доме. это список того, что можно вызывать и какого ждать результата. SDK: пакет реальных инструментов внедрения. Это, как комплект, который позволяет вам подключиться к телефонной системе или электрической проводке. это библиотеки, в которых реализованы вызываемые функции + файлы необходимые для подключения этих библиотек

Ответ 2



API (Application programming interface) - это описание интерфейса чего-либо. Набор правил по которым что-то должно работать. SDK (Software development kit) - это набор инструментов для работы с чем-то. Вы можете рассматривать свой любимый язык программирования как API (набор правил синтаксиса и поведения), а свою любимую среду - как SDK (набор инструментов для написания, проверки и отладки кода).

Ответ 3



API штука очень абстрактная. Это лишь словарь для перевода обращений к сервису в действия. Указывает "куда обращаться, чтобы попросить сервис сделать <...>". "Куда обращаться" может описываться разными способами в зависимости от того, как к сервису осуществляется доступ: Для сетевых API это адреса узлов, пути в пределах узлов, спецификации для запроса, ответа, сообщений/датаграмм или всего протокола связи. Для библиотек под языки программирования или написания плагинов это доступные потребителям функции/классы/интерфейсы/и т. п. В какой-то мере можно считать, что API это спецификация/документация. Ничего более вещественного он из себя не представляет. Один API может быть описан различными способами, но при этом быть одним и тем же API. SDK же вещь гораздо более осязаемая: это комплект программного обеспечения для разработки под некий API. Посему он неминуемо содержит описание API, но во вполне конкретной форме, связанной с тем, из какой среды к API осуществляется доступ. К примеру, для HTTP-сервиса API это спецификация того, какие HTTP-запросы способен принимать сервис: какими могут быть методы + пути + заголовки + тела запросов, какие у каждого запроса будут последствия и какие на них придут ответы. А SDK для такого сервиса для некоего языка программирования может представлять собой заранее заголовленный набор классов, в котором спрятана HTTP-шная природа интерфейса, и обращение к сервису выглядит просто как вызов функции. Такой SDK практически преобразует один API в другой, более удобный для разработки с конкретными технологиями.

Комментариев нет:

Отправить комментарий