Skip to content

Commit 0509fab

Browse files
committed
docs: diagrams for callback, circuit breaker, client session, collecting parameter, colletion pipeline, combinator, command, commander, component, composite entity, composite view, composite, context object, converter, crtp, currying
1 parent d5a46be commit 0509fab

31 files changed

+60
-1
lines changed

callback/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ Sequence diagram
4141

4242
![Callback sequence diagram](./etc/callback-sequence-diagram.png)
4343

44-
4544
## Programmatic Example of Callback Pattern in Java
4645

4746
We need to be notified after the executing task has finished. We pass a callback method for the executor and wait for it to call back on us.

circuit-breaker/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ Wikipedia says
3333

3434
> Circuit breaker is a design pattern used in modern software development. It is used to detect failures and encapsulates the logic of preventing a failure from constantly recurring, during maintenance, temporary external system failure or unexpected system difficulties.
3535
36+
Flowchart
37+
38+
![Circuit Breaker flowchart](./etc/circuit-breaker-flowchart.png)
39+
3640
## Programmatic Example of Circuit Breaker Pattern in Java
3741

3842
This Java example demonstrates how the Circuit Breaker pattern can manage remote service failures and maintain system stability.
139 KB
Loading

client-session/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,10 @@ Wikipedia says
3333

3434
> The client-server model on Wikipedia describes a system where client devices request services and resources from centralized servers. This model is crucial in web applications where client sessions are used to manage user-specific data across multiple requests. For example, when a bank customer accesses online banking services, their login credentials and session state are managed by the web server to maintain continuity of their interactions.
3535
36+
Sequence diagram
37+
38+
![Client Session sequence diagram](./etc/client-session-sequence-diagram.png)
39+
3640
## Programmatic Example of Client Session Pattern in Java
3741

3842
The Client Session design pattern is a behavioral design pattern that maintains a user's state and data across multiple requests within a web application, ensuring a continuous and personalized user experience. This pattern is commonly used in web applications where user-specific data needs to be managed across multiple requests.
95.1 KB
Loading

collecting-parameter/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,10 @@ Wikipedia says
3636

3737
> In the Collecting Parameter idiom a collection (list, map, etc.) is passed repeatedly as a parameter to a method which adds items to the collection.
3838
39+
Flowchart
40+
41+
![Collecting Parameter flowchart](./etc/collecting-parameter-flowchart.png)
42+
3943
## Programmatic Example of Collecting Parameter Pattern in Java
4044

4145
Within a large corporate building, there exists a global printer queue that is a collection of all the printing jobs that are currently pending. Various floors contain different models of printers, each having a different printing policy. We must construct a program that can continually add appropriate printing jobs to a collection, which is called the collecting parameter.
65.8 KB
Loading

collection-pipeline/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,10 @@ Wikipedia says
2929

3030
> In software engineering, a pipeline consists of a chain of processing elements (processes, threads, coroutines, functions, etc.), arranged so that the output of each element is the input of the next; the name is by analogy to a physical pipeline. Usually some amount of buffering is provided between consecutive elements. The information that flows in these pipelines is often a stream of records, bytes, or bits, and the elements of a pipeline may be called filters; this is also called the pipe(s) and filters design pattern. Connecting elements into a pipeline is analogous to function composition.
3131
32+
Flowchart
33+
34+
![Collection Pipeline flowchart](./etc/collection-pipeline-flowchart.png)
35+
3236
## Programmatic Example of Collection Pipeline Pattern in Java
3337

3438
The Collection Pipeline is a programming pattern where you organize some computation as a sequence of operations which compose by taking a collection as output of one operation and feeding it into the next.
30.2 KB
Loading

combinator/README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@ Wikipedia says
3535

3636
> A combinator is a higher-order function that uses only function application and earlier defined combinators to define a result from its arguments.
3737
38+
Flowchart
39+
40+
![Combinator flowchart](./etc/combinator-flowchart.png)
41+
3842
## Programmatic Example of Combinator Pattern in Java
3943

4044
In software design, combinatory logic is pivotal for creating reusable and modular code components. By leveraging higher-order functions, the Combinator pattern promotes code reuse and maintainability in Java applications.

0 commit comments

Comments
 (0)