SDK - 软件开发工具包
SDK(Software Development Kit),软件开发工具包,是一个覆盖范围相当广的名词,可以说辅助开发某一类软件的相关文档、范例和工具的集合都可以叫做 SDK。
SDK是一系列文件的集合,他为软件的开发提供一个平台为软件开发使用提供各种API提供便利。
JDK - Java开发工具包
JDK(Java Development Kit)Java开发工具包,是SUN Microsystems针对Java开发者的产品,JDK已经成为使用最广泛的JAVA SDK 。
可以认为JDK是SDK的一个子集 。
JDK深入
- JDK是整个Java的核心,包括Java运行环境JRE、一堆Java工具(javac/java/jdb等)和java基础的类库(Java API、tr.jar等)
JRE - Java运行环境
JRE(Java Runtime Environment),Java运行环境,是运行基于Java语言编写的程序所不可缺少的运行环境。也是通过它,Java的开发者才得以将自己开发的程序发布到用户手中,让用户使用。
-
JRE中包含了Java virtual machine(JVM),runtime class libraries和Java application launcher,这些是运行Java程序的必要组件。
-
与大家熟知的JDK不同,JRE是Java运行环境,并不是一个开发环境,所以没有包含任何开发工具(如编译器和调试器),只是针对于使用Java程序的用户。
JVM
JVM(Java Virtual Mechinal),JAVA虚拟机。
JVM是JRE的一部分,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。JVM有自己完善的硬件架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。
jar
- jar包就是别人已经写好的一些类,然后将这些类进行打包,你可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性以及方法。
API
API(Application Programming Interface,简称:API),应用编程接口,就是软件系统不同组成部分衔接的约定。
- 程序设计的实践中,编程接口的设计首先要使软件系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。
SDK JDK JRE JVM之间的关系图
SDK和API关系
-
SDK和API的区别SDK相当于开发集成工具环境,API就是数据接口。 在SDK环境下调用API数据。
-
实际上SDK包含了API的定义,API定义一种能力,一种接口的规范,而SDK可以包含这种能力、包含这种规范。但是SDK又不完完全全只包含API以及API的实现,它是一个软件工具包,它还有很多其他辅助性的功能。
-
通俗语言解释API前端调用后端数据的一个通道,就是我们俗说的接口,通过这个通道,可以访问到后端的数据,但是又无需调用源代码。