From 6195d5e1e8036b0b3521a31ac89de56ad9a30d1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ilkka=20Sepp=C3=A4l=C3=A4?= Date: Sat, 12 Apr 2025 09:35:40 +0300 Subject: [PATCH] docs: diagrams for transaction script, twin, and type object --- transaction-script/README.md | 4 ++++ .../etc/transaction-script-flowchart.png | Bin 0 -> 61382 bytes twin/README.md | 4 ++++ twin/etc/twin-sequence-diagram.png | Bin 0 -> 56554 bytes type-object/README.md | 6 +++++- type-object/etc/type-object-flowchart.png | Bin 0 -> 31620 bytes 6 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 transaction-script/etc/transaction-script-flowchart.png create mode 100644 twin/etc/twin-sequence-diagram.png create mode 100644 type-object/etc/type-object-flowchart.png diff --git a/transaction-script/README.md b/transaction-script/README.md index dacc95a04..2e4b89a64 100644 --- a/transaction-script/README.md +++ b/transaction-script/README.md @@ -34,6 +34,10 @@ Wikipedia says > The Transaction Script design pattern is a straightforward way to organize business logic in applications, particularly suitable for scenarios where each request from the presentation layer can be handled by a single procedure. This pattern is often used in simple applications or in systems where rapid development and ease of understanding are crucial. Each transaction script is responsible for a particular task, such as processing an order or calculating a result, and typically interacts directly with the database. +Flowchart + +![Transaction Script Pattern Flowchart](./etc/transaction-script-flowchart.png) + ## Programmatic Example of Transaction Script Pattern in Java Our Transaction Script pattern in Java example is about booking hotel rooms. diff --git a/transaction-script/etc/transaction-script-flowchart.png b/transaction-script/etc/transaction-script-flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..33e7319eb3b906a99470d5360b4a2b58f516ffcf GIT binary patch literal 61382 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 X0IGNG6SuDt32>+>X)BgJv The Twin pattern is a software design pattern that allows developers to simulate multiple inheritance in languages that don't support it. Instead of creating a single class inheriting from multiple parents, two closely linked subclasses are created, each inheriting from one of the parents. These subclasses are mutually dependent, working together as a pair to achieve the desired functionality. This approach avoids the complications and inefficiencies often associated with multiple inheritance, while still allowing the reuse of functionalities from different classes. +Sequence diagram + +![Twin Pattern Sequence Diagram](./etc/twin-sequence-diagram.png) + ## Programmatic Example of Twin Pattern in Java Consider a game where a ball needs to function as both a `GameItem` and a `Thread`. Instead of inheriting from both, we use the Twin pattern with two closely linked objects: `BallItem` and `BallThread`. diff --git a/twin/etc/twin-sequence-diagram.png b/twin/etc/twin-sequence-diagram.png new file mode 100644 index 0000000000000000000000000000000000000000..9dc73a8a08d2f47622206043d3657ef01c22ece0 GIT binary patch literal 56554 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 Ipzg>21${nT;Q#;t literal 0 HcmV?d00001 diff --git a/type-object/README.md b/type-object/README.md index dbdd6a405..e28c495e0 100644 --- a/type-object/README.md +++ b/type-object/README.md @@ -32,12 +32,16 @@ Real-world example In plain words -> Explore how the Java Type Object pattern enables dynamic creation and management of flexible and extensible sets of related classes, ideal for Java developers seeking modularity without modifying existing codebase. +> Type Object pattern enables dynamic creation and management of flexible and extensible sets of related classes, ideal for Java developers seeking modularity without modifying existing codebase. gameprogrammingpatterns.com says > Define a type object class and a typed object class. Each type object instance represents a different logical type. Each typed object stores a reference to the type object that describes its type. +Flowchart + +![Type Object Pattern Flowchart](./etc/type-object-flowchart.png) + ## Programmatic Example of Type Object Pattern in Java The Type Object pattern is a design pattern that allows for the creation of flexible and reusable objects by creating a class with a field that represents the 'type' of the object. This design pattern proves invaluable for scenarios where anticipated Java types are undefined upfront, or when modifications or additions are required, ensuring efficient Java development without frequent recompilations. diff --git a/type-object/etc/type-object-flowchart.png b/type-object/etc/type-object-flowchart.png new file mode 100644 index 0000000000000000000000000000000000000000..6c38e929fcf4cef813887f0d0d573ac2d52b59ff GIT binary patch literal 31620 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