乐趣区

以API驱动的开发流程:选择一个出色的API规范可以帮你节省时间和省去麻烦

在 API 开发的实践中有一项重要的过程就是规划 API 规范。API 规范通常包含一组 API(通常我们称之为服务)的定义,就像房子的蓝图一样。一份 API 规范中应该包含一个微服务应用提供了哪些 API,这些 API 上承载的数据的定义。API 规范可以帮助提前做好应用的结构设计,所以 API 规范的编写是开发前的关键步骤,它可以帮助你在编写代码之前降低设计缺陷或问题。API 驱动的开发流程在以 API 驱动的开发过程中,开发者首先创建某一种机器和人都能识别,并且长期存在的 API 规范。遵循 API 规范,可以让你在开发 API 时提前捕获任何小故障或不一致之地方。虽然这个过程将使开发工作增加少量开销,但这项工作必不可少,因为它可以大大加速后面应用开发和测试维护的时间。预先规划好的 API 规范可以为你的开发节省数月甚至数年的时间,并且提高已开发好的 API 的复用性。否则,除了要在 API 设计上多花时间,有时候甚至必须从头构建一个新的 API。API 驱动的开发流程鼓励将设计阶段与开发阶段分开,并迭代地进行处理。API 的实现快速演进,但 API 规范保持稳定,可以确保 API 的使用者不会受到变化带来的影响。这也意味着使用标准化规范构建设计时,就可以通过模拟并获得用户反馈信息来测试该规范。API 规范有很多类型,对于 REST API,较为流行的 API 规范有 Swagger, RAML 等。对于 SOAP,通常使用基于 W3C 标准的,XML 格式的 WSDL 规范。对于 REST 和 SOAP 区别感兴趣的读者可以参考我的另一篇文章比较 REST 和 SOAP 之间的差别。作为国内 API 管理领域的领导者,灵长科技开发的通用企业应用接口管理系统(CEAMS)为 Node.js 开发者提供了包括 Web IDE 在内的全套微服务应用开发以及 API 管理工具,以及相应的后台微服务框架:CDIF 的支持。在 CEAMS 上,系统也为开发者提供了一份创新的内置 API 规范模型。这份 API 规范模型可以看作是一个 JSON 版本的 WSDL 规范,可以被用来描述在 CEAMS 系统上运行的云端微服务应用提供的 JSON API 接口,以及在这些 API 上传输的 JSON 数据的定义。在 CEAMS 系统上,系统将要求开发者从规划 API 开始,通过系统提供的 JSON 编辑器创建和编辑这份 API 规范:用户首先为自己的 API 起一个名字,同时为它自由地创建符合 JSON Schema 标准的,任意嵌套复杂度的 API 请求和返回的 JSON 数据结构定义。从这份 API 规范出发,系统将自动为开发者创建应用的框架 JavaScript 代码、API 文档、API 调用方的接入代码(目前支持 Java)、以及在线的 API 测试工具等等。这些工具可以帮助开发者在很大程度上减少编写代码、文档和手动测试的精力,保持文档和代码永远一致,减轻对接和同步的工作量。同时,系统将根据开发者编写的 API 规范中提供的 JSON schema 数据定义,在运行时自动对输入的 API 请求数据做数据验证,并过滤掉不合法的请求,帮助提高微服务应用的数据安全性和稳定性。API 设计背后的逻辑思路很简单:保持足够的灵活性和复用能力。这也就意味着当你构建 API 时要提前计划——不仅仅是规划项目路线图以缩短开发周期,而是为未来一两年可能存在的需求做出安排,好的 API 应该支持多种内容类型并保持灵活性开发者要保持一颗正确的心态——因为你将长期关注你所构建的 API。选择一个出色的 API 规范可以节省时间以及省去开发过程中不必要的麻烦,同时,选择一个全面专业的开发平台,同样也会提升开发运维效率。灵长科技自主开发的智能连接和数据集成平台 CEAMS,是为 Node.js 技术生态中的 API 和微服务应用开发者量身定做的微服务应用开发和以及 API 运维管理系统。将系统连接、数据集成、业务逻辑全部通过松耦合集成于一体的开发平台。系统的目标客户主要是系统和数据集成开发者。开发者利用 CEAMS 系统,可以通过统一的规范模式,快速地与各类 IT 系统,数据库,云计算服务和智能设备高效对接,平台不仅帮助开发者简化了许多与底层设备对接的复杂操作,并基于提供大量的自动化工具。CEAMS 系统已在国内包括长沙警务云等多个 IT 项目中得到成功应用,并在单个项目中成功支持数十位开发者同时在线开发和管理自身的后台微服务应用。目前,CEAMS 系统已开放免费下载使用,感兴趣的用户可以和我们联系或加入灵长科技技术支持 QQ 群:618450152 获取关于产品的进一步信息。

退出移动版