`

转载:SPI和API的区别

阅读更多
转载自Stack Overflow,原文地址:http://stackoverflow.com/questions/2954372/difference-between-spi-and-api

What is the difference between Service Provider Interface (SPI) and Application Programming Interface (API)?

More specifically, for Java libraries, what makes them an API and/or SPI?

the API is the description of classes/interfaces/methods/... that you call and use to achieve a goal

the SPI is the description of classes/interfaces/methods/... that you extend and implement to achieve a goal

Put differently, the API tells you what a specific class/method does for you and the SPI tells you what you must do to conform.

Sometimes SPI and API overlap. For example in JDBC the Driver class is part of the SPI: If you simply want to use JDBC, you don't need to use it directly, but everyone who implements a JDBC driver must implement that class.

The Connection interface on the other hand is both SPI and API: You use it routinely when you use a JDBC driver and it needs to be implemented by the developer of the JDBC driver.
分享到:
评论

相关推荐

    28335:SPI读取传感数据-CAN传送

    TMS320F28335是Texas Instruments(TI)推出的一款高性能C28x浮点数字信号处理器,它集成了多种通信接口,包括SPI(Serial Peripheral Interface)和CAN,非常适合实时控制和数据处理任务。 1. **SPI接口**:SPI是...

    STM32F103实验:SPI程序源代码.rar

    在这个实验中,我们将探讨如何在STM32F103上实现SPI通信,使用的开发环境是KEIL,这是一种流行的嵌入式软件开发工具,集成了编译器、调试器和项目管理功能,支持C和汇编语言编程。 SPI通信的原理: 1. 主从模式:...

    液晶屏幕lcd spi 初始化 代码

    1. 设置SPI总线的速度和极性:SPI的时钟速度通常需要与LCD的数据手册中的建议值匹配,以确保数据传输的准确性和稳定性。 2. 选择LCD设备:通过CS引脚的电平控制,将SPI接口切换到与LCD通信的模式。 3. 发送初始化...

    springfox-spi-2.7.0-API文档-中文版.zip

    赠送原API文档:springfox-spi-2.7.0-javadoc.jar; 赠送源代码:springfox-spi-2.7.0-sources.jar; 赠送Maven依赖信息文件:springfox-spi-2.7.0.pom; 包含翻译后的API文档:springfox-spi-2.7.0-javadoc-API文档...

    软件架构:SPI的Demo

    SPI是一种在不同模块或组件之间定义服务发现和服务使用的机制,它允许第三方开发者扩展应用程序的功能,而无需修改原始代码。在Java中,SPI主要通过`java.util.ServiceLoader`类来实现。 在描述中提到了一个博客...

    wosa_xfs实例(从SPI到API)

    在IT行业中,尤其是在嵌入式系统和设备驱动开发领域,理解和掌握SPI(Serial Peripheral Interface)协议以及如何将其与高层API(Application Programming Interface)交互至关重要。本文将通过一个名为“wosa_xfs”...

    第十一节: SPI读写串行FLASH.pdf

    8. SPI通信时序和配置:实际的SPI通信需要根据外围设备的技术手册来配置SPI的时序参数,包括时钟极性和相位、波特率等,以确保数据的正确传输。 9. SPI FLASH读写操作:完成初始化后,需要实现具体的读写操作函数,...

    eeprom_api.zip_PIC24_PIC24 SPI 程序_PIC24 spi_eeprom API_spi eepro

    4. **SPI EEPROM API**:此API(Application Programming Interface)是一组预定义的函数和数据结构,允许用户通过编程方式与SPI接口的EEPROM进行交互,如读取、写入和擦除操作。API通常包括初始化、传输命令、读写...

    SPI与SCI与I2C区别

    ### SPI、SCI与I2C的区别及原理 #### 一、SPI串行外围设备接口 **SPI(Serial Peripheral Interface)**是由Motorola公司提出的一种同步串行接口技术,广泛应用于Motorola系列微控制器中,例如68系列MCU。SPI总线...

    ADSP-BF533的例程源码9:SPI驱动

    SPI是一种同步串行通信协议,广泛用于连接微控制器和各种外设,如传感器、存储器和显示设备。在这个例程中,我们将了解如何在ADSP-BF533上实现和使用SPI驱动。 首先,我们需要理解SPI的基本工作原理。SPI协议通常...

    springfox-spi-2.2.2-API文档-中文版.zip

    赠送原API文档:springfox-spi-2.2.2-javadoc.jar; 赠送源代码:springfox-spi-2.2.2-sources.jar; 赠送Maven依赖信息文件:springfox-spi-2.2.2.pom; 包含翻译后的API文档:springfox-spi-2.2.2-javadoc-API文档...

    SPI.rar_SPI协议_spi_spi 协议_spi 协议

    SPI(Serial Peripheral Interface)协议是一种同步串行通信接口,广泛应用于微控制器和其他外围设备之间,如传感器、存储器、显示屏等。SPI协议以其简单、高效的特点,在嵌入式系统和物联网设备中扮演着重要角色。V...

    传感网应用开发:SPI介绍.pptx

    总的来说,SPI是一种高效且灵活的通信协议,适用于多种传感器和微控制器间的通信,尤其在需要高速传输和低延迟的场合。然而,其引脚需求相对于I2C或UART可能更多,因此在硬件设计时需要考虑到这一点。通过正确配置...

    i2c与spi的区别

    ### i2c与spi的区别及与can的区别 #### 一、引言 随着现代电子技术的发展,越来越多的设备采用数字接口进行通信。其中,串行通信接口因其在电路设计中的优势,如减少所需的物理线路数量,成为了微处理器与外部设备...

    springfox-spi-2.9.2-API文档-中文版.zip

    赠送原API文档:springfox-spi-2.9.2-javadoc.jar; 赠送源代码:springfox-spi-2.9.2-sources.jar; 赠送Maven依赖信息文件:springfox-spi-2.9.2.pom; 包含翻译后的API文档:springfox-spi-2.9.2-javadoc-API文档...

    springfox-spi-2.4.0-API文档-中文版.zip

    赠送原API文档:springfox-spi-2.4.0-javadoc.jar; 赠送源代码:springfox-spi-2.4.0-sources.jar; 包含翻译后的API文档:springfox-spi-2.4.0-javadoc-API文档-中文(简体)版.zip 对应Maven信息:groupId:io....

    wspi.rar_api spi_spi write

    在标签中,“api_spi”和“spi_write”进一步确认了我们的关注点在于SPI接口的编程API以及写入操作。 压缩包内的文件“wspi.c”和“wspi.h”很可能是实现或声明这些功能的源代码和头文件。`wspi.c`可能包含了SPI...

    实验16:spi FLASH.zip_NRF51822 SPI访问FLASH_beautiful9h2_voweldss

    实验16的"spi FLASH.zip_NRF51822 SPI访问FLASH_beautiful9h2_voweldss"文件包含了一套完整的代码和资源,用于在NRF51822上实现SPI通信与外部FLASH的交互。 SPI是一种同步串行接口,通常用于微控制器和外围设备之间...

    springfox-spi-3.0.0-API文档-中文版.zip

    赠送原API文档:springfox-spi-3.0.0-javadoc.jar; 赠送源代码:springfox-spi-3.0.0-sources.jar; 赠送Maven依赖信息文件:springfox-spi-3.0.0.pom; 包含翻译后的API文档:springfox-spi-3.0.0-javadoc-API文档...

    springfox-spi-2.4.0-API文档-中英对照版.zip

    赠送原API文档:springfox-spi-2.4.0-javadoc.jar 赠送源代码:springfox-spi-2.4.0-sources.jar 包含翻译后的API文档:springfox-spi-2.4.0-javadoc-API文档-中文(简体)-英语-对照版.zip 对应Maven信息:groupId...

Global site tag (gtag.js) - Google Analytics