API против Toolkit против Framework против библиотеки - PullRequest
10 голосов
/ 28 марта 2011

У меня очень простой вопрос, и я хочу получить четкий ответ на простом примере.

В чем основное различие между API, Toolkit, Framework и Library?

Ответы [ 3 ]

6 голосов
/ 28 марта 2011

Это всегда было моим пониманием, вы, несомненно, увидите различные мнения по этому вопросу:

API (интерфейс прикладного программирования) - позволяет использовать код в уже работающем приложении в автономном режиме,

Framework - код, который предоставляет базовые классы и интерфейсы для определенного типа задачи / приложения, обычно в форме шаблона проектирования.(Хотя и не всегда)

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

6 голосов
/ 23 сентября 2011

Я предпочитаю следующее:

  1. API - это абстрактное описание того, как использовать приложение.Например, API может описывать синтаксис функции (объявление) сервера чата.то есть логин, publish_message, subscribe_messages.И это описывает любые протоколы для использования приложения.т. е. должен войти в систему перед отправкой или получением сообщений, либо клиенты будут отброшены через 2 минуты, если не отправлять или получать сообщения.
  2. Библиотека - это реализация API, она содержит скомпилированный код, который реализует функции и протоколы (поддерживает состояние использования).
  3. Инструментарий - это набор библиотек (API) и сервисов, сгруппированных вместе, чтобы предоставить разработчику более широкий спектр возможных решений.Например, Globus Toolkit предоставляет услуги (такие как передача файлов, передача заданий и планирование), которые разработчик может установить и запустить на своих серверах.Они также предоставляют API для создания приложений, которые могут использовать сервисы, развернутые интегрированным способом.Например, разработчик может создать программу, которая использует API представления задания для связи со службой отправки задания.
  4. Framework - это набор руководящих принципов, предотвращающих ненадлежащее использование или развитие.Разработчик должен создавать свои приложения в рамках правил и границ фреймворка.Это делается путем принуждения разработчика расширять текущую платформу для разработки нового программного обеспечения.расширяя платформу, вы заставляете ее придерживаться.

Я не говорю, что это совершенно правильно, но до сих пор она работала нормально для меня!

0 голосов
/ 28 марта 2011

Эти термины иногда неправильно меняются.

Подобные посты читайте:

В чем основное различие между фреймворком и инструментарием?

Framework против Toolkit vs. Library

Я предпочитаю называть библиотеку псевдонимом модуля или пространства имен.Инструментарий и API, как правило, представляют собой набор библиотек для общей задачи.Altought, API больше используется для процедурного программирования, чем объектно-ориентированное программирование.

...