API 是一套明确定义的各种软件组件之间的通信方法;
接口和协议:(以银行运行过程进行类比)
接口:
银行内部人员工作区域 与 客户办理业务 两者相互交互的业务台处,进行业务对接。在这个中间区域,前台和后台发生了交互, 双方都不能越界 ,交互也只能发生在中间的区域。
在 API 术语里面,我们管中间的这块区域叫做接口 Interface ;在这里各个部分发生交互。在我们的银行中,前台和后台都同意并且规定使用 Interface 来交换信息。
协议:
顾客咨询银行前台今日蔬菜价格,这个不在前台工作人员的工作范畴内,所以要规定业务交流的内容限定,从而引出协议的概念。
在 API 术语中,协议 是规定了各部分之间如何进行交流的一系列规则的集合。各部分之间想要完成交互必须理解并且遵守同一个协议。
格式
双方交流使用不同的语言则无法进行有效交流,这又引出了另一个概念 格式(Format),在程序员的世界里,通用的格式包含 XML 和 JSON。