[안드로이드 앱개발자 시각에 특화된 설명]
💡 SDK (Software Development Kit)
개발자가 응용 프로그램을 만들 수 있게 해주는 개발 도구 꾸러미
(API, IDE, 문서, 라이브러리, 코드 샘플 및 기타 유틸리티가 포함)
어떤 응용 프로그램을 만들지에 따라 다른 SDK를 다운로드 받음
-> 안드로이드 앱개발을 위해서는 Java를 포함한 SDK(주로 JDK)
-> ios 개발을 위해서는 Swift를 포함한 SDK
-> MS Window 개발을 위해서는 .NET을 포함한 .NET Framework SDK 가 필요
** 개발자가 직접 자신의 응용 프로그램에 맞는 SDK를 개발하기도 하는듯
💡 JDK (Java Development Kit)
자바 개발에 사용되는 SDK (안드로이드 앱 개발 또한 JAVA를 사용하기 때문에 JDK 사용)
💡 API (Application Programming Interface)
운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있도록 만든 인터페이스
안드로이드 앱개발에서는 안드로이드 OS를 사용하는 단말기/JAVA가 제공하는 기능을 제어할 수 있도록 인터페이스가 만들어진다. OS도 업데이트가 되기 때문에 버전에 따라 API 버전도 달라짐
**쉬운 설명
내가 앱개발을 하면 그 코드와 기능들을 결국 OS의 제어를 받게 된다.
그런데 내가 내 맘대로 우후죽순 코드를 짜면 과연 제어가 될까?
아니다. OS가 내 코드를 제어할 수 있도록 거기에 맞게 코드를 작성해야 한다.
그러기 위해서는 규약(약속)이 필요한데 그 규약을 인터페이스 라고 하고, 응용 프로그램을 개발할 때 지켜야 하는 규약을 API (application programming interface) 라고 한다.
[참고]
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=sung_mk1919&logNo=221635667345
https://medium.com/@logishudson0218/jdk-sdk-ndk-3b095101c040
'Android' 카테고리의 다른 글
[안드로이드/View] View Binding (0) | 2022.09.06 |
---|---|
[안드로이드/View] View의 개념 (0) | 2022.09.03 |
[Android Studio] 프로젝트 SDK버전, AVD (0) | 2022.03.13 |
안드로이드의 특징 (0) | 2022.03.13 |
[JAVA] 안드로이드 앱개발 로드맵 (0) | 2022.03.13 |