Programming/기타

[기타] SDK와 API 알아보기

devssun 2018. 8. 1. 14:19
728x90
반응형

SDK 알아보기

  1. SDK 란?

    • SDK는 Software Development Kit의 약자로 일반적으로 소프트웨어 기술자가 사용하여 특정한 소프트웨어 꾸러미를 말한다. (위키백과)
    • 소프트웨어를 개발하기 위한 공구박스? 정도..?
    • 이 안에는 API, 개발에 필요한 도구들, 샘플 코드, 관련 문서 등이 들어있는 개발 도구의 집합이다.
    • ex) Android SDK, JDK, iOS SDK, .NET Framework SDK, Facebook SDK ....
  2. API 란?

    • API는 Application Programming Interface의 약자로 응용 프로그램에서 사용할 수 있도록 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다. (위키백과)
    • API 제작자는 누군가 쉽게 데이터베이스나 기능을 사용할 수 있도록 모듈화하여 만들어 두었다. API 사용자는 (아마도 개발자) A에 대한 정보가 필요할 때 DB에 접속하여 정보를 가져오는 것이 아닌 getInfo같은 API를 통해 정보를 가져오게 된다. 수정이나, 삭제 등의 작업도 이와 같이 동작한다.
  3. SDK와 API의 차이점

    • API는 B의 상황에선 API를 등 코드를 작성하는 방법, 정보를 받기 위해선 어떤 매개변수를 넘겨야 하는 지 등에 대한 정보를 제공하며 그 이후에 어떤 작업을 진행해야 하는지는 사용자의 몫이다.
    • SDK에는 소프트웨어를 개발하기 위한 실제 코드가 있으며 사용자가 사용할 수 있다.
    • SDK와 API의 차이점에 대해 찾고있었는데 아래와 같은 좋은 예제가 있었다. (https://code.i-harness.com/ko/q/cbccb)
      집에 홈 시어터 시스템을 설치하려는 경우와 같습니다.
      API를 사용하는 것은 모든 와이어, 나사, 비트 및 조각을 얻는 것과 같습니다.
      가능성은 무한합니다 (받는 조각에 의해서만 제한됩니다), 때로는 압도적입니다.
      SDK는 키트를 얻는 것과 같습니다.
      그래도 함께 붙여야하지만, 스크루 상자보다 IKEA 책꽂이 용 사전 조각과 지침을 얻는 것과 같습니다.
    • API는 A-Z까지 해야한다면 SDK는 조각 조각을 이어붙이는 작업이라고 생각하면 좋지 않을까?
  4. 참고 문서

반응형