logo

SDK란 무엇입니까? SDK 대 라이브러리 대 프레임워크

컴퓨터 프로그램을 만드는 세계에는 SDK, 라이브러리, 프레임워크라는 세 가지 중요한 것이 있습니다. 개발자가 소프트웨어를 구축하는 데 도움이 되는 특별한 도구와 같습니다. 사람들은 종종 이러한 용어를 혼동하지만, 각자는 서로 다른 직업을 갖고 있으며 프로그램이 잘 작동하도록 하는 데 정말 중요합니다. 이번 글에서는 SDK, Library, Framework에 대해 자세히 알아보고 차이점에 대해 알아보겠습니다.

내용의 테이블



SDK 대 라이브러리 대 프레임워크

소프트웨어 개발 키트란 무엇입니까?

SDK의 전체 형태는 소프트웨어 개발 키트입니다. SDK 또는 소프트웨어 개발 키트는 다음의 완전한 모음입니다. 소프트웨어 도구 일반적으로 하드웨어 및 소프트웨어 공급업체가 제공하는 프로그램. SDK는 개발자가 운영 체제나 프레임워크와 같은 특정 플랫폼에 적합한 애플리케이션을 만드는 데 사용됩니다. SDK의 주요 목표는 개발자에게 애플리케이션 개발 프로세스를 단순화하고 속도를 높이는 미리 만들어진 리소스 세트를 제공하는 것입니다. SDK(소프트웨어 개발 키트)는 개발자에게 특정 플랫폼이나 프레임워크용 애플리케이션을 만드는 데 필요한 도구와 리소스를 제공하는 여러 주요 구성 요소로 구성됩니다.

도서관이란 무엇입니까?

라이브러리는 애플리케이션 코드가 특정 기능을 위해 호출하는 도우미 함수/객체/모듈 세트를 제공합니다. 라이브러리는 일반적으로 좁은 범위(예: 문자열, IO, 소켓)에 중점을 두므로 API도 더 작고 필요한 종속성이 더 적은 경향이 있습니다. 이는 단지 클래스 정의의 모음일 뿐입니다. 왜 필요한가요? 그 이유는 매우 간단합니다. 즉, 코드 재사용은 다른 개발자가 이미 작성한 코드를 사용하는 것입니다. do , 일부 라이브러리에는 문자열에서 특정 문자의 마지막 인덱스를 찾는 findLastIndex(char)라는 메서드가 있습니다. 라이브러리의 findLastIndex(charToFind) 함수를 바로 호출하고 함수 호출에서 찾아야 하는 위치의 문자를 매개변수로 전달할 수 있습니다.



프레임워크란 무엇입니까?

반면에 프레임워크는 사용자가 사용자 정의 애플리케이션을 생성하기 위해 작성하는 개방형 또는 구현되지 않은 함수나 개체를 정의했습니다. (C++/Java 사용자는 이것이 추상 함수 구현과 매우 흡사하다는 점을 이해하게 될 것입니다.) 프레임워크는 그 자체가 애플리케이션이기 때문에 더 넓은 범위를 가지며 자신의 필요에 따라 사용자 애플리케이션을 만드는 데 필요한 거의 모든 것을 포함합니다.

Wikipedia에서는 다음과 같이 더 명확하게 설명합니다.

컴퓨터 프로그래밍에서 소프트웨어 프레임워크는 일반적인 기능을 제공하는 소프트웨어가 추가 사용자 작성 코드에 의해 선택적으로 변경될 수 있어 특정 애플리케이션 소프트웨어를 제공하는 추상화입니다.



SDK(소프트웨어 개발 키트) vs 라이브러리 vs 프레임워크

측면 SDK(소프트웨어 개발 키트) 도서관 뼈대
정의 개발자가 특정 플랫폼이나 환경용 애플리케이션을 구축하는 데 도움이 되도록 소프트웨어 회사, 플랫폼 또는 프레임워크에서 제공하는 도구, 라이브러리, 문서 및 샘플 코드 모음 개발자가 소프트웨어 애플리케이션 내에서 특정 작업이나 기능을 수행하는 데 사용할 수 있는 미리 작성된 코드 또는 루틴 모음 애플리케이션의 구조, 흐름 및 아키텍처를 정의하여 소프트웨어 애플리케이션 개발을 위한 기반을 제공하는 구조화된 라이브러리, 도구 및 규칙 세트
구성요소 라이브러리, 개발 도구, 문서, 샘플 코드 재사용 가능한 구성요소, 함수, 클래스, 모듈 라이브러리, API, 도구, 규칙
목적 API, 개발 도구, 문서 및 샘플 코드를 포함하여 특정 플랫폼 또는 환경용 애플리케이션을 개발하는 데 필요한 모든 것을 개발자에게 제공합니다. 특정 작업이나 요구 사항을 해결하기 위해 사전 구축된 기능을 제공하여 생산성, 코드 재사용 및 유지 관리 가능성을 향상시킵니다. 애플리케이션 구축, 개발 간소화, 일관성 촉진 및 모범 사례 시행을 위한 스캐폴딩 또는 청사진 제공
안드로이드 SDK, iOS SDK, AWS SDK React.js, NumPy, 개조 AngularJS, 장고, 스프링

이 표에는 정의, 구성 요소, 목적 및 예제를 포함하여 SDK, 라이브러리 및 프레임워크 간의 주요 차이점이 요약되어 있습니다.

결론: SDK 대 라이브러리 대 프레임워크

SDK, 라이브러리, 프레임워크는 필수 도구입니다. 소프트웨어 개발 , 각각은 서로 다른 목적으로 사용됩니다. SDK는 특정 플랫폼에서 애플리케이션을 구축하기 위한 포괄적인 리소스를 제공하고, 라이브러리는 특정 작업에 재사용 가능한 구성 요소를 제공하며, 프레임워크는 애플리케이션의 구조와 흐름을 정의합니다. 이들 간의 차이점을 이해하면 개발자가 생산성을 향상하고, 코드 재사용을 촉진하고, 개발 프로세스를 간소화하여 궁극적으로 고품질 소프트웨어 애플리케이션을 생성할 수 있는 올바른 도구를 선택하는 데 도움이 됩니다.