반응형

Library

  • 개발을 위해 필요한 컴포넌트의 집합.
  • 컴포넌트 : 변수, 함수, 클래스 등

 

API (Application Programming Interface)

  • 응용 프로그램 개발 인터페이스.
  • 여기서 인터페이스란 상호작용을 할 수 있도록 연결해주는 장치이다.
  • 즉, 개발자가 쉽게 접근할 수 있게 외부로 공개된 Library의 표면적인 부분.

 

API와 Library 차이점

- Library는 컴포넌트 자체를 의미.
- API는 그 컴포넌트(Library)를 활용하기 위한 규약이다.

 

 

SDK (Software Development Kit)

  • 소프트웨어 개발 키트로 개발에 도움이 될만한 개발 도구 모음.
  • 위 개발 도구에는 프로그램, 라이브러리, API, 코드 샘플, 문서 등이 포함되어 있다.
  • SDK는 대상이 되는 특정 운영체제 또는 서비스 등이 존재한다 -> SDK가 가지는 목적이 있다.
  • 예시) Windows SDK, Android SDK, iOS SDK 등

 

Framework

  • 응용 프로그램 구현을 수월하게 하기 위해 제공된 기반 구조(뼈대)이다.
  • 개발을 위해 필요한 컴포넌트들의 집합.
  • 구체적이며 확장 가능한 기반 코드를 보유.
  • 설계자가 의도하는 여러 디자인 패턴의 집합으로 구성.

 

 

 

 

Framework와 Library 차이점

- 개발의 제어 흐름이 누구에게 주어져 있는 지에 달렸다.
- Library는 개발자가 원하고자 할 때, 호출하여 사용.
- Framework는 가져다 사용한다는 개념보다는 개발자가 Framework라는 특정 공간안에서 개발.

 

 

 

 

 

 

반응형
woongs_93