这篇讽刺文章描述了正在寻找API并希望与之集成的开发人员经常发生的事情。 我很确定某些事情在某个时间点已经发生在您身上。 如果您是API提供者,则应认真考虑如何处理我将要介绍的五个主题。


1.搜索
这一切都从搜索开始。 您想找到一个可以为您提供特定功能的API。 您还希望能够快速将软件与其集成在一起。 您没有时间自己实现事情,这就是您正在寻找能够为您完成工作的API的主要原因。 大多数情况下,您环顾四周,但找不到适合您需要的任何东西。
然后,您伸出手寻求建议。 您会收到同行的建议。 遇到与您类似的问题的人会告诉您他们的故事以及如何使用特定的API解决问题。 您问自己“为什么不呢?”,然后考虑尝试一下。 毕竟,可能发生的最坏情况是您不喜欢它,而是重新进行搜索。 对?
2.注册
在听到您决定尝试的有关API的精彩内容之后,您实际上是想对其进行测试。 测试它意味着您想使用自己喜欢的API客户端进行一些调用。 您还希望能够了解API响应是否合理,以及需要编写哪些代码才能使用它。 因此,您登录到以前从未听说过的公司的网站上,并且为了能够尝试使用他们的API,他们会要求您注册。
您对于必须注册感到有些不安,但无论如何还是要这样做,因为您确实想使用此API。 还记得您花了多少时间搜索它以及从可信赖的人那里收到的所有好的建议吗? 因此,您注册后才发现实际上必须共享您的信用卡详细信息并开始试用“ Pro”计划才能测试API。 注册过程最终结束,您设法获得一个API密钥,以便您可以运行一些集成测试。 您开始挖掘有关如何使用该API的信息。
3.文件
您最终找到了API文档的位置,并开始后悔输入信用卡详细信息的那一刻。 唯一可用的信息是所有可能操作的详细列表,包括所有参数和响应。 您在寻找示例和快速入门指南,但没有找到。 您在寻找SDK,但找不到。 甚至没有一个由社区创建的。
经过更多搜索后,您最终进入一个第三方社区网站,在该网站上,像您这样的开发人员分享了与API集成的经验。 您最终会发现一些其他人共享的示例,并决定遵循与您要实现的目标接近的特定示例。 在几个小时的失败之后,您了解到该示例是针对先前版本的API编写的。 您最终决定自己编写一个SDK。
4.实施
在花了一个星期左右的时间来编写实现完整API参考的SDK之后,您决定将其开源。 然后,您可以与API社区共享SDK,并与API背后的公司联系,以便他们知道。 他们在其API文档页面上发布了指向您的SDK的链接,这使您感到至少,这使其他人的生活更轻松。
您在API社区网站上变得很流行,并且开始在SDK上接收拉取请求。 SDK从不同的地方链接在一起,因此越来越具有可见性。 您会发现,与实际完成与API集成的工作相比,您花费更多的时间来维护SDK。 您绝对需要寻求帮助。
5.整合
在公司内部,人们对SDK感到兴奋,并且您设法组织了一小组开发人员来帮助您实施集成。 产品负责人开始记录集成的工作方式以及最终用户如何从中受益。 开发人员记录整个过程并遵循所有最佳实践。 事情看起来很好。
在向董事会进行演示的过程中,您过去几个月来一直在构建的集成突然停止工作。 您首先认为这是暂时的,然后再尝试,但似乎已停止工作。 在事后分析中,您的团队发现所有单元测试都是绿色的,并且一切都按预期进行。 经过数小时的调试,您发现该API的新版本已发布,该版本不向后兼容。
摘要
此时,您有两种选择:返回搜索另一个API或重新实现SDK,以使其与API最新版本一起使用。 您感到沮丧是因为您在该项目上投入了很多资金,并且说服了很多人加入您的行列。 你该怎么办?
您最终决定聘请一家咨询公司来实施集成。 他们将按照您的指示进行,并实施产品负责人认为最好的一切。 至少您将摆脱这种负担,并且再也不必使用此API。