架构与语言

Architecture vs. Language

我昨天参加了一个关于 API 基础知识的研讨会,我觉得有些奇怪。我们涵盖了 REST 是什么以及 SOAP 是什么的基本概要,这些被定义为 api 的架构。

主持人定义它的方式是程序有语言,apis 有架构。这是 api 架构的正确定义吗?

我查看了 google 试图比较这两个术语编程语言和体系结构,但没有找到明确的结果。

该声明几乎可以肯定是手摇过度简化,并且可能只有在他试图表达的观点的背景下才是正确的。

架构是程序高级功能和这些程序交互的设计和文档。

程序以语言实现,API 以程序形式实现。

A​​PI 是程序特定接口的文档,因此是体系结构的一部分。 API 作为程序实现,它们本身具有适合更大系统架构的架构。

我会忽略他的说法,这对你的心智模型没有帮助。了解什么是程序,什么是语言,什么是架构。

REST 和 SOAP 甚至不是对等的。 REST 是一种架构风格,通常实现为 HTTP 动词。它与通常使用 SOAP 实现的 RPC 样式 Web 服务形成对比。 SOAP 是一种位于 HTTP 之上的协议,用于实现 RPC 样式的 Web 服务,它不是一种体系结构,而是一种协议。 REST 不是协议,它是架构元素。 None 其中本身就是一个完整的架构。 SOAP/REST/HTTP/programs/languages 都是架构中的组件。