Java 中区分 API 和 SPI,通俗的讲:API 和 SPI 都是相对的概念,他们的差别只在语义上,API 直接被应用开发人员使用,SPI 被框架扩展人员使用
一、API
大多数情况下,都是实现方
来制定接口并完成对接口的不同实现,调用方
仅仅依赖却无权选择不同实现。
关注使用,不关注具体实现并改变实现方式;
二、SPI
而如果是调用方
来制定接口,实现方
来针对接口来实现不同的实现。调用方
来选择自己需要的实现方
。
1)
如何定义SPI
2)SPI实现原理
Java 中区分 API 和 SPI,通俗的讲:API 和 SPI 都是相对的概念,他们的差别只在语义上,API 直接被应用开发人员使用,SPI 被框架扩展人员使用
大多数情况下,都是实现方
来制定接口并完成对接口的不同实现,调用方
仅仅依赖却无权选择不同实现。
关注使用,不关注具体实现并改变实现方式;
而如果是调用方
来制定接口,实现方
来针对接口来实现不同的实现。调用方
来选择自己需要的实现方
。
1)
如何定义SPI
2)SPI实现原理