我想向一个非开发人员解释API和SDK之间的区别。我需要解释为什么商业指纹软件供应商很可能不会提供SDK,尽管他们肯定可能使用了SDK。
设备供应商和软件供应商都可以和应该暴露一个定义良好的API。这个API允许其他软件程序与供应商自己的软件组件或硬件设备(编写)互操作。
如果有更多想要清晰解释的想法,我非常感激建议。我想强调目标是向一个不知道开发人员术语的非程序员解释概念。
具体而言,在指纹传感器与用于注册/验证的软件的背景下,这就是我尝试解释的方式:
如果我是一个指纹设备/传感器制造商并且不从事编写软件的业务,则可以更好地营销我的产品的方法是:
- 确保我的设备驱动程序可以安装在各种操作系统上
- 为软件开发人员定义和提供一个API来编写与我的设备“对话”或使用我的设备的程序(例如,用于注册、验证等)
- 开发并提供一个SDK(比API更进一步)使软件开发人员更轻松、更快速地编写与我的设备配合使用的程序。SDK可能提供辅助代码库、参考应用程序、文档等。