Introduce a common handler for all requests for a web site. This
way we can encapsulate common functionality such as security,
internationalization, routing and logging in a single place.
Class diagram
Applicability
Use the Front Controller pattern when
you want to encapsulate common request handling functionality in single place
you want to implements dynamic request handling i.e. change routing without modifying code
make web server configuration portable, you only need to register the handler web server specific way