20. Facade
nProvide a unified interface to a set of interfaces of subsystems
nFor example, a compiler is divided into many parts
uScanner, parser, syntax tree data structure, optimizers, generation, …
nMost clients just compile files, and don’t need to access inner parts