IT

프레임 워크 대 라이브러리 대 IDE 대 API 대 SDK 대 툴킷의 차이점은 무엇입니까?

lottoking 2020. 6. 24. 07:21
반응형

프레임 워크 대 라이브러리 대 IDE 대 API 대 SDK 대 툴킷의 차이점은 무엇입니까? [닫은]


몇 가지 예를 원합니다. 항상 혼란스러워서 몇 가지 예를 들어 더 잘 이해할 수 있습니다.

또한 : Eclipse는 API 또는 IDE입니까?


IDE는 (예 : 양식 디자이너, 자원 편집자 등으로) 개발 컴파일 및 응용 프로그램을 디버깅에 대한 추가 지원하는 suped 업 텍스트 편집기 - 통합 개발 환경입니다. 예 : Eclipse, Visual Studio.

도서관은 당신이 자신의 코드에서 호출 할 수있는 당신은 쉽게 / 더 빨리 일을 할 수 있도록하는 것이 코드의 덩어리입니다. 예를 들어 비트 맵 처리 라이브러리는 비트 맵 이미지를로드하고 조작하는 기능을 제공하므로 모든 코드를 직접 작성하지 않아도됩니다. 일반적으로 라이브러리는 하나의 기능 영역 만 제공합니다 (이미지 처리 또는 zip 파일에서 작동)

API 라이브러리에 인터페이스 - (응용 프로그램 프로그래밍 인터페이스)는 당신을 위해 일을하기를 물어 호출 할 수있는 라이브러리의 기능 / 방법을 의미하는 용어입니다.

SDK (소프트웨어 개발 키트) (종종 별도의 도구 응용 프로그램, 데이터 파일과 샘플 코드) 라이브러리의 라이브러리 또는 그룹을 그 원조 당신의 코드를 개발하는 운영 체제의 기능을 사용하기위한 용도 특정 시스템 (예를 들어, 확장 코드 (이다 Windows SDK), 특정 시스템 (DirectX SDK)을 통해 3D 그래픽 그리기, 다른 응용 프로그램 확장을위한 추가 기능 작성 (Office SDK) 또는 Arduino 또는 휴대폰과 같은 장치가 원하는 작업을 수행하도록 코드 작성) SDK에는 여전히 단일 초점이 있습니다.

툴킷은 SDK를 같이 - 그것은 당신이 쉽게 장치 또는 시스템에 액세스 할 수 있도록하는 데 사용할 수있는 도구 (종종 코드 라이브러리)의 그룹입니다 ... 비록 아마 단지 코드 라이브러리에보다 도구 및 응용 프로그램을 제공하는 더 많은 초점 .

프레임 워크는 큰 라이브러리 또는 라이브러리 그룹 다양한 서비스를 제공합니다 (이 아닌 대부분의 도서관 / SDK를이처럼 아마 하나의 초점을 맞춘 기능)입니다. 예를 들어 .NET은 응용 프로그램 프레임 워크를 제공합니다. 필요한 응용 프로그램 프레임 워크 (예 : Windows, 그래픽, 인쇄, 통신 등)를 방대한 범위의 응용 프로그램을 작성하는 데 쉽게 사용할 수 있습니다. "라이브러리"는 필요한 모든 것을 지원합니다. 종종 프레임 워크는 라이브러리 코드를 사용하여 작업의 일부를 수행하는 응용 프로그램을 작성하는 대신 자체 코드를 작성하는 완전한 기반을 제공합니다.

물론 이러한 설명과 정확히 일치하지 않는 많은 예제가 있습니다.


차 비유

여기에 이미지 설명을 입력하십시오

IDE : MS Office of Programming. 여기에는 코드를 입력하는 위치와 더 행복한 프로그래머를위한 몇 가지 추가 기능이 있습니다. (예 : Eclipse, Netbeans ). 차체 : 그것은 당신이 실제로 만지고보고 작업하는 것입니다.

라이브러리 : 라이브러리는 종종 여러 프로그램 파일로 그룹화되지만 단일 아카이브 파일로 패키지 된 함수의 모음입니다. 여기에는 다른 사람들이 만든 프로그램이 포함되어 있으므로 휠을 다시 만들 필요가 없습니다. (예 : junit.jar, log4j.jar ). 라이브러리는 일반적으로 핵심적인 역할을 수행하지만 모든 작업을 배후에서 수행하며 GUI는 없습니다. 자동차 엔진.

API : 도서관 출판사 문서. 이것이 내 라이브러리를 사용해야하는 방법입니다. (예 : log4j API , junit API ). 자동차의 사용자 매뉴얼-예, 자동차도 함께 제공됩니다!


키트

키트 란 무엇입니까? 특정 서비스를 제공하기 위해 함께 작동하는 많은 관련 항목의 모음입니다. 누군가가 의약품 키트를 말하면 응급 상황에 필요한 모든 것을 얻을 수 있습니다 : 석고, 아스피린, 거즈 및 방부제 등

여기에 이미지 설명을 입력하십시오

SDK : 맥도날드의 행복한 식사 . 메인 코스, 음료, 디저트 및 보너스 장난감 : 당신은 당신이 필요로하고 (필요하지 않은) 상자를 깔끔하게 포장했습니다. SDK는 패키지에 조립 된 다양한 소프트웨어 구성 요소로, 즉시 사용할 수 있도록 "준비가 완료되었습니다". 그것은 종종 여러 라이브러리를 포함 할 있지만 반드시 플러그인, API 문서, 심지어 IDE 자체를 포함 할 필요는 없습니다. (예 : iOS 개발 키트 ).

Toolkit: GUI. GUI. GUI. When you hear 'toolkit' in a programming context, it will often refer to a set of libraries intended for GUI development. Since toolkits are UI-centric, they often come with plugins (or standalone IDE's) that provide screen-painting utilities. (e.g. GWT)

Framework: While not the prevalent notion, a framework can be viewed as a kit. It also has a library (or a collection of libraries that work together) that provides a specific coding structure & pattern (thus the word, framework). (e.g. Spring Framework)


Consider Android Development:

IDE: Eclipse etc..

Library: android.app.Activity library (Class with all code)

API: Interface basically all functions with witch we call

SDK: The Android SDK provides you the API libraries and developer tools necessary to build, test, and debug apps for Android (----tools - DDMS,Emulator ----platforms - Android OS versions, ----platform tools - ADB, ----API docs)

ToolKit: Could be ADT Bundle

Framework: Big library but more of architecture oriented


SDK represents to software development kit, and IDE represents to integrated development environment. The IDE is the software or the program is used to write, compile, run, and debug such as Xcode. The SDK is the underlying engine of the IDE, includes all the platform's libraries an app needs to access. It's more basic than an IDE because it doesn't usually have graphical tools.


In other words...

IDE Even your notepad is an IDE. Every software you write/compile code with is an IDE.

Library A bunch of code which simplifies functions/methods for quick use.

API A programming interface for functions/configuration which you work with, its usage is often documented.

SDK Extras and/or for development/testing purposes.

ToolKit Tiny apps for quick use, often GUIs.

GUI Apps with a graphical interface, requires no knowledge of programming unlike APIs.

Framework Bunch of APIs/huge Library/Snippets wrapped in a namespace/or encapsulated from outer scope for compact handling without conflicts with other code.

MVC A design pattern separated in Models, Views and Controllers for huge applications. They are not dependent on each other and can be changed/improved/replaced without to take care of other code.

Example:

Car (Model)
The object that is being presented.
Example in IT: A HTML form.


Camera (View)
Something that is able to see the object(car).
Example in IT: Browser that renders a website with the form.


Driver (Controller)
Someone who drives that car.
Example in IT: Functions which handle form data that's being submitted.

Snippets Small codes of only a few lines, may not be even complete but worth for a quick share.

Plug-ins Exclusive functions for specified frameworks/APIs/libraries only.

애드온 특정 GUI를위한 추가 모듈 또는 서비스.

참고 : https://stackoverflow.com/questions/8772746/difference-between-framework-vs-library-vs-ide-vs-api-vs-sdk-vs-toolkits

반응형