STUDY/etc

SDK 와 API 알아보기

sorrow16 2021. 2. 5. 16:41

SDK 알아보기

 

     1. SDK 란?

 

          1. SDK는 Software Development Kit의 약자로 일반적으로 소프트웨어 기술자가 사용하여 특정한 소프트웨어 꾸러미                  를 말한다. (위키백과)

           2. 소프트웨어를 개발하기 위한 공구박스? 정도..?
           3. 이 안에는 API, 개발에 필요한 도구들, 샘플 코드, 관련 문서 등이 들어있는 개발 도구의 집합이다.
           ex> Android SDK, JDK, iOS SDK, .NET Framework SDK, Facebook SDK ....

 

     2. API 란?

 

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

 

      3. SDK와 API의 차이점

 

          1. API는 B의 상황에선 가 API를 등 코드를 작성하는 방법, 정보를 받기 위해선 어떤 매개변수를 넘겨야 하는 지 등에 대한                정보를 제공하며 그 이후에 어떤 작업을 진행해야 하는지는 사용자의 몫이다.

           2. SDK에는 소프트웨어를 개발하기 위한 실제 코드가 있으며 사용자가 사용할 수 있다.

           3. SDK와 API의 차이점에 대해 찾고있었는데 아래와 같은 좋은 예제가 있었다. 

               (https://code.i-harness.com/ko/q/cbccb)

 

                     집에 홈 시어터 시스템을 설치하려는 경우와 같습니다.
                     API를 사용하는 것은 모든 와이어, 나사, 비트 및 조각을 얻는 것과 같습니다.
                     가능성은 무한합니다 (받는 조각에 의해서만 제한됩니다), 때로는 압도적입니다.
                     SDK는 키트를 얻는 것과 같습니다.
                     그래도 함께 붙여야하지만, 스크루 상자보다 IKEA 책꽂이 용 사전 조각과 지침을 얻는 것과 같습니다.

 

            4. API는 A-Z까지 해야한다면 SDK는 조각 조각을 이어붙이는 작업이라고 생각하면 좋지 않을까?

 

      4. 참고 문서

 

             1. API가 뭔가요?(비개발자용) brunch.co.kr/@cysstory/115

 

출처 : hyesunzzang.tistory.com/90