Разница между framework vs Library vs IDE vs API vs SDK vs Toolkits? [закрытый]

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

также: является ли Eclipse API или IDE?

5 ответов


An IDE - интегрированная среда разработки-текстовый редактор suped-up с дополнительной поддержкой разработки (например, конструкторов форм, редакторов ресурсов и т. д.), компиляции и отладки приложений. e.g Eclipse, Visual Studio.

A библиотека - это кусок кода, который вы можете вызвать из своего собственного кода, чтобы помочь вам делать вещи быстрее/легче. Например, библиотека обработки растровых изображений предоставляет средства для загрузки и управления растровым изображением снимки, избавляя вас от необходимости писать весь код самостоятельно. Как правило, библиотека предлагает только одну область функциональности (обработка изображений или работа с zip-файлами)

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

An SDK (software development kit) - это библиотека или группа библиотек (часто с дополнительные средства приложения, файлы с данными и пример кода), что поможет вам в разработке кода, который использует конкретной системы (например, расширение код для использования функций операционной системы (Windows SDK), то чертеж 3D-графики по определенной системе (в DirectX SDK) для написания надстройки для расширения возможностей других приложений (офис СДК), или писать код, чтобы сделать устройство как Arduino или мобильный телефон делай, что хочешь). SDK по-прежнему будет иметь один фокус.

A набор инструментов как SDK-это группа инструментов (и часто библиотек кода), которые можно использовать для облегчения доступа к устройству или системе... Хотя, возможно, больше внимания уделяется предоставлению инструментов и приложений, чем просто библиотекам кода.

A framework - это большая библиотека или группа библиотек, которая предоставляет множество услуг (а не, возможно, только одну сфокусированную способность, как большинство библиотек/SDK). Например, .NET предоставляет платформу приложений - это упрощает использование большинства (если нет все) из разрозненных сервисов, которые вам нужны (например, Windows, графика, печать, связь и т. д.), Чтобы написать широкий спектр приложений - поэтому одна "библиотека" обеспечивает поддержку почти всего, что вам нужно сделать. Часто фреймворк предоставляет полную базу, на которой вы создаете свой собственный код, а не приложение, которое использует библиотечный код для выполнения части своей работы.

есть, конечно, много примеров в дикой природе, которые не будут точно соответствовать этим описаниям хотя.


Аналогия С Автомобилем

enter image description here

IDE: MS Office программирования. Здесь вы вводите свой код, а также некоторые дополнительные функции, чтобы сделать вас более счастливым программистом. (например,В Eclipse, В NetBeans). кузов автомобиля: это то, что вы действительно касаетесь, видите и работаете.

библиотека: библиотека представляет собой набор функций, часто сгруппированных в несколько программных файлов, но упакованных в один архивный файл. Этот содержит программы, созданные другими людьми, так что вам не придется изобретать колесо. (например,С JUnit.банку, log4j.jar). Библиотека обычно играет ключевую роль, но делает всю свою работу за кулисами, у нее нет GUI. двигатель автомобиля.

API: документация издателя библиотеки. это, как вы должны использовать мою библиотеку. (например,API для настройки log4j, junit API). пользователь автомобиля руководство-да, автомобили тоже приходят с одним!


наборы

Что такое комплект? Это совокупность множества связанных элементов, которые работают вместе, чтобы предоставить конкретную услугу. Когда кто-то говорит, аптечку, вы получаете все необходимое для ЧП: пластыри, аспирин, бинты и антисептик, и т. д.

enter image description here

SDK: Макдональдс Хэппи Мил. У вас есть все, что вам нужно (и не нужно) аккуратно упаковано: main конечно, напиток, десерт и бонусная игрушка. SDK-это набор различных программных компонентов, собранных в пакет, так что они "готовы к действию" прямо из коробки. Он часто включает в себя несколько библиотек и can, но может не обязательно включать Плагины, документацию API, даже саму IDE. (например, комплект для разработки iOS).

набор инструментов: графический интерфейс. ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ. ГРАФИЧЕСКИЙ ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ. Когда вы слышите "инструментарий" в контексте программирования, он часто ссылается на набор библиотек, предназначенных для разработки GUI. Поскольку наборы инструментов ориентированы на пользовательский интерфейс, они часто поставляются с плагинами (или автономными IDE), которые предоставляют утилиты рисования экрана. (например,GWT)

рамки: хотя это не распространенное понятие, фреймворк можно рассматривать как набор. Он также имеет библиотеку (или коллекцию библиотек, которые работают вместе), которая обеспечивает определенную структуру кодирования и шаблон (таким образом, слово,рамки). (например, Весна Framework)


Рассмотрим Разработку Android:

IDE: Eclipse etc..

библиотека: android.приложение.Библиотека действий (класс со всем кодом)

API: интерфейс в основном все функции с ведьмой мы называем

SDK: Android SDK предоставляет вам библиотеки API и инструменты разработчика, необходимые для создания, тестирования и отладки приложений для Android (- - - - инструменты-DDMS, эмулятор - - - - платформы-версии ОС Android, - - - - инструменты платформы-ADB, - - - - API docs)

ToolKit: может быть ADT Bundle

Framework: большая библиотека, но больше ориентированная на архитектуру


SDK представляет к набору разработки программного обеспечения, и IDE представляет к интегрированной среде разработки. IDE-это программное обеспечение или программа, используемая для записи, компиляции, запуска и отладки, например Xcode. SDK является базовым ядром IDE, включает в себя все библиотеки платформы, к которым приложение должно получить доступ. Он более прост, чем IDE, потому что обычно не имеет графических инструментов.


другими словами...

IDE Даже ваш блокнот-это IDE. Каждая программа вам написать/скомпилировать код с-это IDE.

библиотека Куча кода, который упрощает функции/методы для быстрого использования.

API Программный интерфейс для функций / конфигурации, с которыми вы работаете, его использование часто документируется.

SDK Дополнительно и/или для целей разработки / тестирования.

набор инструментов Крошечные приложения для быстрого использования, часто GUIs.

GUI Приложения с графическим интерфейсом, не требует знания программирования в отличие от API.

рамки Куча API/огромная библиотека / фрагменты, завернутые в пространство имен/или инкапсулированные из внешней области для компактной обработки без конфликтов с другим кодом.

MVC Шаблон дизайна, разделенный в моделях, представлениях и контроллерах для огромных приложения. Они не зависят друг от друга и могут быть изменены/улучшены/заменены без необходимости заботиться о другом коде.

пример:

Автомобиль (Модель)
объекта представленный.
Пример в нем: HTML-форма.


Камера (Вид)
что-то, что может видеть объект(автомобиль).
Пример в нем: браузер, который отображает веб-сайт с формой.


Драйвер (Контроллер)
кто-то, кто водит машину.
Пример в нем: функции, которые обрабатывают данные формы, которые передаются.

фрагментов Небольшие коды только нескольких строк, может быть, даже не полный, но стоит для быстрой доли.

Плагины Эксклюзивные функции для определенных фреймворков / API / библиотек только.

дополнения Дополнительные модули или услуги для конкретных ГИС.