본문 바로가기

개발용어

알아두면 좋은 개발 용어 10 (SDK, API)

반응형

제가 다니는 회사는 게임에 SDK를 제공하고 있습니다. 그렇게 된 이유는 아마도 게임에 사용되는 공통 기능을 제공하여 게임 개발에만 집중할 수 있도록 하기 위함이 아닐까 싶습니다. 뭐 이건 제 추측이고요.

 

아무튼, SDK를 제공합니다. 

 

SDK(Software development kit)

  • 개요
    • 소프트웨어 개발 키트로 개발자에게 다른 프로그램을 추가하거나 연결할 수 있는 커스텀 앱을 제작할 수 있는 기능을 제공하는 도구 모음
      • SDK 안에는 IDE(통합개발환경)을 포함하는데 여러가지 API, 디버깅 프로그램, 라이브러리 등 여러가지 도구 포함
  • SDK 필요성 
    • 모든 기능을 처음부터 다 만들지 않아도 됨 
    • 미리 만들어진 도구를 제공함으로써 개발 과정을 쉽게 함
  • 예시 
    • Android SDK : 안드로이드용 앱 개발을 위한 도구
    • JDK : 자바개발자를 대상으로한 오라클에서 제공하는 도구 

예전에 API를 잠깐 이야기를 한적이 있었는데, 그 때 아래와 같이 정의를 해놓았습니다. 

API (Application Programming Interface)

  • 개요
    • 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스
  • API 필요성
    • 구현방식을 알지 못해도 제품 또는 서비스 사이에 커뮤니케이션 가능
    • 애플리케이션 개발을 간소화 시간 비용 절약

 

그럼 이 비슷비슷한 SDK와 API를 차이점이 뭘까요?

SDK는 망치, 팬치, 니퍼 등이 들어있는 하나의 공구박스라고 하면, API는 그 중 망치만을 말합니다. 그래서 개념적으로는 SDK가 API보다 큰 개념이지요. 

 

 

 

참고자료 

반응형