Facade

Edit on GitHub

A facade acts as an internal API. The main responsibility of the facade is to hide the internal implementation.

Facades simply delegate calls to internal business models. Similar to a remote web service, the client should not care about how a specific task is done. This is also important for future updates of the core. As long as the contract of the facade is not broken, an update can be integrated without (too much) pain.

Spryker’s facades are an implementation of the facade pattern.

In Spryker, facades are the entry point into Zed’s business layer. All the other models are behind the facade and must not be accessed directly. Facade