From 546c7ecf5392db8edaa9c866efcd104703beb2ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ilkka=20Sepp=C3=A4l=C3=A4?= Date: Sat, 1 Mar 2025 13:45:49 +0200 Subject: [PATCH] docs: add front controller architecture diagram --- front-controller/README.md | 9 +++++---- .../front-controller-architecture-diagram.png | Bin 0 -> 47119 bytes 2 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 front-controller/etc/front-controller-architecture-diagram.png diff --git a/front-controller/README.md b/front-controller/README.md index b4576c7ca..c04e9b519 100644 --- a/front-controller/README.md +++ b/front-controller/README.md @@ -34,6 +34,11 @@ Wikipedia says > The front controller software design pattern is listed in several pattern catalogs and is related to the design of web applications. It is "a controller that handles all requests for a website", which is a useful structure for web application developers to achieve flexibility and reuse without code redundancy. +Architecture diagram + +![Front Controller Architecture Diagram](./etc/front-controller-architecture-diagram.png) + + ## Programmatic Example of Front Controller Pattern in Java The Front Controller design pattern is a pattern that provides a centralized entry point for handling all requests in a web application. It ensures that request handling is managed consistently and efficiently across an application. @@ -104,10 +109,6 @@ In this example, when a request is received, the `FrontController` delegates the This is a basic example of the Front Controller pattern, where all requests are handled by a single controller and dispatcher, ensuring consistent and efficient request handling. -## Detailed Explanation of Front Controller Pattern with Real-World Examples - -![Front Controller](./etc/front-controller.png "Front Controller") - ## When to Use the Front Controller Pattern in Java * The Front Controller design pattern is particularly useful for Java web applications that require a centralized mechanism for request handling. diff --git a/front-controller/etc/front-controller-architecture-diagram.png b/front-controller/etc/front-controller-architecture-diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..1caa0dc3b45d19d23d42532e86be2490344eb0ba GIT binary patch literal 47119 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 NR1`H8s^u(0{tInJ0J#7F literal 0 HcmV?d00001