所有Facade都是API?

时间:2013-08-30 16:02:28

标签: api oop design-patterns facade

Facade模式是为复杂代码提供简化的界面。

因此,将它用作系统的包装是正确的吗?那就像翻译地图,以促进隐藏复杂性的理解?

是否正确,然后将所有Facade称为API?

2 个答案:

答案 0 :(得分:1)

任何应用程序的编程接口都是应用程序编程接口,所以它是一个API,就像你的操作系统有一个API让你无法摆弄太多内存或抽象硬盘驱动器 - 或者游戏引擎有一个API作为图形和音频代码的外观。

所以,是的,Facade的实现是一个API,但是您用作更复杂系统的接口的任何其他代码也是如此。 (我想你可以问这个问题是“所有的API都是一个只提供抽象层的外观吗?” - 你可能会认为这是正确的。)

然而,这是一个奇怪的问题,因为取决于你与谁交谈,这些术语可能会改变 - 我们只是真正用它们代表抽象概念,正如我们认为的那样。

答案 1 :(得分:1)

请记住,设计模式不是硬性快速规则。 Facade是一种降低使用某些系统的复杂性的API。该系统可以是单个库,多个库,各种网络客户端等。