API&SPI的区别?

简介: API&SPI的区别?

API(Application Programming Interface)
即应用程序接口,服务方提供接口和实现,给出接口文档供调用方调用,调用方需要遵循服务方的接口文档规范。

SPI(Service Provider Interface)
即服务提供方接口,服务方提供接口,定义好接口参数、返回等规范,但是实现交给调用方,相当于call back的思想。

image.png

API是一组定义了软件组件之间通信协议的规范。它定义了一些函数、类、方法或协议,允许不同的软件组件之间进行交互。API定义了如何调用和使用特定的功能,隐藏了底层实现的细节,提供了一种编程接口,使得开发人员可以方便地使用和集成这些功能。API通常用于在应用程序之间或不同层级的软件组件之间进行通信和集成。

SPI是一种软件开发模式,它定义了一种服务提供者和服务使用者之间的协议,用于实现可插拔的组件。SPI主要用于扩展或替换现有的功能模块。在SPI模式中,服务提供者定义了一个接口,服务使用者通过该接口与服务提供者进行交互。服务使用者可以根据需要选择和加载适当的服务提供者实现。SPI的目的是提供一种灵活的扩展机制,使得系统能够方便地添加、替换或定制功能模块,而无需修改现有的代码。

总结,API是用于不同软件组件之间的通信和集成,提供了一种编程接口;而SPI是一种扩展机制,用于实现可插拔的组件,允许动态添加、替换或定制功能模块。

相关文章
|
1月前
|
JavaScript API
vue 3.0 所采用的 Composition Api 和 vue 2.0 使用的 Option Api 区别
vue 3.0 所采用的 Composition Api 和 vue 2.0 使用的 Option Api 区别
53 0
|
1月前
|
消息中间件 算法 Java
客户端限流器和服务端API限流器的区别
客户端限流器和服务端API限流器在限流对象、实现方式以及应用场景等方面存在显著差异。客户端限流器主要关注于保护客户端资源和控制客户端行为,而服务端API限流器则更注重于保护服务端系统和确保服务的高可用性。
37 3
|
1月前
|
数据采集 DataWorks 安全
DataWorks产品使用合集之在DataWorks数据服务中,生成API和注册API的主要区别如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
38 2
|
1月前
|
JavaScript API
Options API:和compositionAPI分别是什么,有什么区别哇
Options API:和compositionAPI分别是什么,有什么区别哇
|
1月前
|
JavaScript API
Composition Api 与 Options Api 有什么区别?
Composition Api 与 Options Api 有什么区别?
38 0
|
8月前
|
Java API 开发者
【面试题精讲】SPI 和 API 有什么区别?
【面试题精讲】SPI 和 API 有什么区别?
|
1月前
|
JavaScript API
vue 3.0 所采用的 Composition Api 和 vue 2.0 使用的 Option Api 区别
vue 3.0 所采用的 Composition Api 和 vue 2.0 使用的 Option Api 区别
24 0
|
1月前
|
小程序 API
小程序中用于跳转页面的5个api是什么?区别?
小程序中用于跳转页面的5个api是什么?区别?
|
1月前
|
XML API 网络架构
API的类型及其区别是什么?
API的类型及其区别是什么?
148 0
|
11月前
|
Kubernetes JavaScript API
如何理解 Istio Ingress, 它与 API Gateway 有什么区别?东西流量?南北流量?
这三者都和流量治理密切相关,那么流量治理在过去和现在有什么区别呢?都是如何做的呢? 在学习istio的时候对流量管理加深了理解。什么是东西流量?什么是南北流量?
211 0