Posts tagged with api


最近在重构公司的一个交互中间件,在重新设计API及总体架构的时候思考了许多, ,那么什么样的API才算是一个设计良好的API呢? 参考了许多的资料,做一下总结。主要来自这个keynote 什么是API 我们只要是在进行编程我们就需要不停的设计API, API简单来讲可以是一个调用的函数,一个接口。抽象来说:接口是一个内聚系统暴漏给外部的一切信息。 包含但不限于: 调用方式:比如通过lib库或者http接口等 调用约定:比如lib的函数签名或者HTTP的参数,http method或者头信息,长短链接等等。 依赖关系:比如接口的调用需要涉及到第三方或者其他的准备工作等等。 设计良好API的特点 这里探讨的API均为系统边界的API设计,而对于内部API来说不在探讨范围之内。 变动困难 API就像一个人一样,我们和一个API打交道的时候需要了解这个人的特性偏好等, 有的人很好相处,而有的人让人很头疼,尤其是你不得不和他打交道的时候。 和人一样,如果你不得不和他打交道,要改变他的秉性是很痛苦的,人的…