Facade is one of the simple and most used Design Patterns in Object oriented programming – It is pronounced as Façade (Pronounce as /fəˈsɑːd/).
Design Time Consideration
- Create an Object, which would contain all the logic
- Create method which would be an unique interface for clients
- All Implementation and Inter dependency would be handled within this new object
Facade would provide an abstract layer between clients and underlying different objects. It also provides unique interface which would be accessed by all the clients who generally don’t care how the underlying objects are accessed. Clients use the uniform interface provided by facade to pass the required argument. Then its Facade’s responsibility to map parameters from uniform interface to make it compatible to underlying objects interface. Facade may uses conditions to access other objects and generates the output.