Whst is Facade?
The facade pattern is a software design pattern commonly used with object-oriented programming.
Why it is needed?
It mostly reducs the dependencies of outside code on the inner workings of a library,thus allowing more flexibility in developing the system. And provide simpler interface to clients.
There are other design patterns as well like Bridge Pattern, Proxy Pattern etc.