Compare commits

..

2 Commits

Author SHA1 Message Date
301c46be24 docs: fixes for yaml frontmatter 2021-10-12 15:04:36 +03:00
89fb561301 docs: add missing caching pattern class diagram 2021-10-12 15:03:50 +03:00
263 changed files with 874 additions and 458 deletions
abstract-document
abstract-factory
active-object
acyclic-visitor
adapter
aggregator-microservices
ambassador
api-gateway
arrange-act-assert
async-method-invocation
balking
bridge
builder
business-delegate
bytecode
caching
callback
chain-of-responsibility
circuit-breaker
cloud-static-content-hosting
collection-pipeline
combinator
command
commander
composite-entity
composite
converter
cqrs
dao
data-bus
data-locality
data-mapper
data-transfer-object
decorator
delegation
dependency-injection
dirty-flag
domain-model
double-buffer
double-checked-locking
double-dispatch
eip-aggregator
eip-message-channel
eip-publish-subscribe
eip-splitter
eip-wire-tap
event-aggregator
event-asynchronous
event-driven-architecture
event-queue
event-sourcing
execute-around
extension-objects
facade
factory-kit
factory-method
factory
fanout-fanin
feature-toggle
filterer
fluentinterface
flux
flyweight
front-controller
game-loop
guarded-suspension
half-sync-half-async
hexagonal
index.md
intercepting-filter
interpreter
iterator
layers
lazy-loading
leader-election
leader-followers
localization
ko
tr
zh
abstract-document
abstract-factory
active-object
acyclic-visitor
adapter
aggregator-microservices
ambassador
api-gateway
arrange-act-assert
async-method-invocation
balking
bridge
builder
business-delegate
bytecode
caching
callback
chain
circuit-breaker
cloud-static-content-hosting
collection-pipeline
command
composite-entity
composite
converter
dao
data-bus
data-mapper
data-transfer-object
decorator
delegation
dependency-injection
dirty-flag
double-checked-locking
facade
factory-kit
factory-method
factory
index.md
interpreter
iterator
observer
private-class-data
producer-consumer
proxy
sharding
state
strategy
template-method
version-number
visitor
lockable-object
marker
master-worker-pattern
mediator
memento
model-view-controller
model-view-presenter
model-view-viewmodel
module
monad
monostate
multiton
mute-idiom
naked-objects
null-object
object-mother
object-pool
observer
page-object
parameter-object
partial-response
pipeline
poison-pill
presentation
priority-queue
private-class-data
producer-consumer
promise
property
prototype
proxy
queue-load-leveling
reactor
reader-writer-lock
registry
repository
resource-acquisition-is-initialization
retry
role-object
saga
separated-interface
servant
serverless
service-layer
service-locator
sharding
singleton
spatial-partition
special-case
specification
state
step-builder
strangler
strategy
subclass-sandbox
table-module
template-method
thread-pool
throttling
tls
tolerant-reader
trampoline
transaction-script
twin
typeobjectpattern
unit-of-work
update-method
value-object
version-number
visitor

@ -1,6 +1,9 @@
---
layout: pattern
title: Abstract Document
category: Structural
folder: abstract-document
permalink: /patterns/abstract-document/
categories: Structural
language: en
tags:
- Extensibility

@ -1,6 +1,9 @@
---
layout: pattern
title: Abstract Factory
category: Creational
folder: abstract-factory
permalink: /patterns/abstract-factory/
categories: Creational
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Active Object
category: Concurrency
folder: active-object
permalink: /patterns/active-object/
categories: Concurrency
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Acyclic Visitor
category: Behavioral
folder: acyclic-visitor
permalink: /patterns/acyclic-visitor/
categories: Behavioral
language: en
tags:
- Extensibility

@ -1,6 +1,9 @@
---
layout: pattern
title: Adapter
category: Structural
folder: adapter
permalink: /patterns/adapter/
categories: Structural
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Aggregator Microservices
category: Architectural
folder: aggregator-microservices
permalink: /patterns/aggregator-microservices/
categories: Architectural
language: en
tags:
- Cloud distributed

@ -1,6 +1,9 @@
---
layout: pattern
title: Ambassador
category: Structural
folder: ambassador
permalink: /patterns/ambassador/
categories: Structural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: API Gateway
category: Architectural
folder: api-gateway
permalink: /patterns/api-gateway/
categories: Architectural
language: en
tags:
- Cloud distributed

@ -1,6 +1,9 @@
---
layout: pattern
title: Arrange/Act/Assert
category: Idiom
folder: arrange-act-assert
permalink: /patterns/arrange-act-assert/
categories: Idiom
language: en
tags:
- Testing

@ -1,6 +1,9 @@
---
layout: pattern
title: Async Method Invocation
category: Concurrency
folder: async-method-invocation
permalink: /patterns/async-method-invocation/
categories: Concurrency
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Balking
category: Concurrency
folder: balking
permalink: /patterns/balking/
categories: Concurrency
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Bridge
category: Structural
folder: bridge
permalink: /patterns/bridge/
categories: Structural
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Builder
category: Creational
folder: builder
permalink: /patterns/builder/
categories: Creational
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Business Delegate
category: Structural
folder: business-delegate
permalink: /patterns/business-delegate/
categories: Structural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Bytecode
category: Behavioral
folder: bytecode
permalink: /patterns/bytecode/
categories: Behavioral
language: en
tags:
- Game programming

@ -1,6 +1,9 @@
---
layout: pattern
title: Caching
category: Behavioral
folder: caching
permalink: /patterns/caching/
categories: Behavioral
language: en
tags:
- Performance

Binary file not shown.

Before

(image error) Size: 112 KiB

After

(image error) Size: 137 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Callback
category: Idiom
folder: callback
permalink: /patterns/callback/
categories: Idiom
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Chain of responsibility
category: Behavioral
folder: chain-of-responsibility
permalink: /patterns/chain-of-responsibility/
categories: Behavioral
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Circuit Breaker
category: Behavioral
folder: circuit-breaker
permalink: /patterns/circuit-breaker/
categories: Behavioral
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Static Content Hosting
category: Cloud
folder: cloud-static-content-hosting
permalink: /patterns/cloud-static-content-hosting/
categories: Cloud
language: en
tags:
- Cloud distributed

@ -1,6 +1,9 @@
---
layout: pattern
title: Collection Pipeline
category: Functional
folder: collection-pipeline
permalink: /patterns/collection-pipeline/
categories: Functional
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Combinator
category: Idiom
folder: combinator
permalink: /patterns/combinator/
categories: Idiom
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Command
category: Behavioral
folder: command
permalink: /patterns/command/
categories: Behavioral
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Commander
category: Concurrency
folder: commander
permalink: /patterns/commander/
categories: Concurrency
language: en
tags:
- Cloud distributed

@ -1,6 +1,9 @@
---
layout: pattern
title: Composite Entity
category: Structural
folder: composite-entity
permalink: /patterns/composite-entity/
categories: Structural
language: en
tags:
- Enterprise Integration Pattern

@ -1,6 +1,9 @@
---
layout: pattern
title: Composite
category: Structural
folder: composite
permalink: /patterns/composite/
categories: Structural
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Converter
category: Creational
folder: converter
permalink: /patterns/converter/
categories: Creational
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: CQRS
category: Architectural
folder: cqrs
permalink: /patterns/cqrs/
categories: Architectural
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Data Access Object
category: Architectural
folder: dao
permalink: /patterns/dao/
categories: Architectural
language: en
tags:
- Data access

@ -1,6 +1,9 @@
---
layout: pattern
title: Data Bus
category: Architectural
folder: data-bus
permalink: /patterns/data-bus/
categories: Architectural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Data Locality
category: Behavioral
folder: data-locality
permalink: /patterns/data-locality/
categories: Behavioral
language: en
tags:
- Game programming

@ -1,6 +1,9 @@
---
layout: pattern
title: Data Mapper
category: Architectural
folder: data-mapper
permalink: /patterns/data-mapper/
categories: Architectural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Data Transfer Object
category: Architectural
folder: data-transfer-object
permalink: /patterns/data-transfer-object/
categories: Architectural
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Decorator
category: Structural
folder: decorator
permalink: /patterns/decorator/
categories: Structural
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Delegation
category: Structural
folder: delegation
permalink: /patterns/delegation/
categories: Structural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Dependency Injection
category: Creational
folder: dependency-injection
permalink: /patterns/dependency-injection/
categories: Creational
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Dirty Flag
category: Behavioral
folder: dirty-flag
permalink: /patterns/dirty-flag/
categories: Behavioral
language: en
tags:
- Game programming

@ -1,6 +1,9 @@
---
layout: pattern
title: Domain Model
category: Architectural
folder: domain-model
permalink: /patterns/domain-model/
categories: Architectural
language: en
tags:
- Domain

@ -1,6 +1,9 @@
---
layout: pattern
title: Double Buffer
category: Behavioral
folder: double-buffer
permalink: /patterns/double-buffer/
categories: Behavioral
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Double Checked Locking
category: Idiom
folder: double-checked-locking
permalink: /patterns/double-checked-locking/
categories: Idiom
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Double Dispatch
category: Idiom
folder: double-dispatch
permalink: /patterns/double-dispatch/
categories: Idiom
language: en
tags:
- Extensibility

@ -1,6 +1,9 @@
---
layout: pattern
title: EIP Aggregator
category: Integration
folder: eip-aggregator
permalink: /patterns/eip-aggregator/
categories: Integration
language: en
tags:
- Enterprise Integration Pattern

@ -1,6 +1,9 @@
---
layout: pattern
title: EIP Message Channel
category: Integration
folder: eip-message-channel
permalink: /patterns/eip-message-channel/
categories: Integration
language: en
tags:
- Enterprise Integration Pattern

@ -1,6 +1,9 @@
---
layout: pattern
title: EIP Publish Subscribe
category: Integration
folder: eip-publish-subscribe
permalink: /patterns/eip-publish-subscribe/
categories: Integration
language: en
tags:
- Enterprise Integration Pattern

@ -1,6 +1,9 @@
---
layout: pattern
title: EIP Splitter
category: Integration
folder: eip-splitter
permalink: /patterns/eip-splitter/
categories: Integration
language: en
tags:
- Enterprise Integration Pattern

@ -1,6 +1,9 @@
---
layout: pattern
title: EIP Wire Tap
category: Integration
folder: eip-wire-tap
permalink: /patterns/eip-wire-tap/
categories: Integration
language: en
tags:
- Enterprise Integration Pattern

@ -1,6 +1,9 @@
---
layout: pattern
title: Event Aggregator
category: Structural
folder: event-aggregator
permalink: /patterns/event-aggregator/
categories: Structural
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Event-based Asynchronous
category: Concurrency
folder: event-asynchronous
permalink: /patterns/event-asynchronous/
categories: Concurrency
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Event Driven Architecture
category: Architectural
folder: event-driven-architecture
permalink: /patterns/event-driven-architecture/
categories: Architectural
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Event Queue
category: Concurrency
folder: event-queue
permalink: /patterns/event-queue/
categories: Concurrency
language: en
tags:
- Game programming

@ -1,6 +1,9 @@
---
layout: pattern
title: Event Sourcing
category: Architectural
folder: event-sourcing
permalink: /patterns/event-sourcing/
categories: Architectural
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Execute Around
category: Idiom
folder: execute-around
permalink: /patterns/execute-around/
categories: Idiom
language: en
tags:
- Extensibility

@ -1,6 +1,9 @@
---
layout: pattern
title: Extension objects
category: Behavioral
folder: extension-objects
permalink: /patterns/extension-objects/
categories: Behavioral
language: en
tags:
- Extensibility

@ -1,6 +1,9 @@
---
layout: pattern
title: Facade
category: Structural
folder: facade
permalink: /patterns/facade/
categories: Structural
language: en
tags:
- Gang Of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Factory Kit
category: Creational
folder: factory-kit
permalink: /patterns/factory-kit/
categories: Creational
language: en
tags:
- Extensibility

@ -1,6 +1,9 @@
---
layout: pattern
title: Factory Method
category: Creational
folder: factory-method
permalink: /patterns/factory-method/
categories: Creational
language: en
tags:
- Extensibility

@ -1,6 +1,9 @@
---
layout: pattern
title: Factory
category: Creational
folder: factory
permalink: /patterns/factory/
categories: Creational
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Fan-Out/Fan-In
category: Integration
folder: fanout-fanin
permalink: /patterns/fanout-fanin/
categories: Integration
language: en
tags:
- Microservices

@ -1,6 +1,9 @@
---
layout: pattern
title: Feature Toggle
category: Behavioral
folder: feature-toggle
permalink: /patterns/feature-toggle/
categories: Behavioral
language: en
tags:
- Extensibility

@ -1,8 +1,10 @@
---
layout: pattern
title: Filterer
description: Design pattern that helps container-like objects to return filtered version of themselves.# short meta description that shows in Google search results
folder: filterer
permalink: /patterns/filterer/
language: en
category: Functional
categories: Functional
tags:
- Extensibility
---

@ -1,6 +1,9 @@
---
layout: pattern
title: Fluent Interface
category: Functional
folder: fluentinterface
permalink: /patterns/fluentinterface/
categories: Functional
language: en
tags:
- Reactive

@ -1,6 +1,9 @@
---
layout: pattern
title: Flux
category: Structural
folder: flux
permalink: /patterns/flux/
categories: Structural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Flyweight
category: Structural
folder: flyweight
permalink: /patterns/flyweight/
categories: Structural
language: en
tags:
- Gang of Four

@ -1,6 +1,9 @@
---
layout: pattern
title: Front Controller
category: Structural
folder: front-controller
permalink: /patterns/front-controller/
categories: Structural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Game Loop
category: Behavioral
folder: game-loop
permalink: /patterns/game-loop/
categories: Behavioral
language: en
tags:
- Game programming

@ -1,6 +1,9 @@
---
layout: pattern
title: Guarded Suspension
category: Concurrency
folder: guarded-suspension
permalink: /patterns/guarded-suspension/
categories: Concurrency
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Half-Sync/Half-Async
category: Concurrency
folder: half-sync-half-async
permalink: /patterns/half-sync-half-async/
categories: Concurrency
language: en
tags:
- Performance

@ -1,6 +1,10 @@
---
layout: pattern
title: Hexagonal Architecture
category: Architectural
folder: hexagonal
permalink: /patterns/hexagonal/
pumlformat: svg
categories: Architectural
language: en
tags:
- Decoupling

147
index.md

@ -1,147 +0,0 @@
| Pattern | Category | Tags |
| :--- | :--- | :--- |
| [Abstract Document](abstract-document) | Structural | Extensibility |
| [Abstract Factory](abstract-factory) | Creational | Gang of Four |
| [Active Object](active-object) | Concurrency | Performance |
| [Acyclic Visitor](acyclic-visitor) | Behavioral | Extensibility |
| [Adapter](adapter) | Structural | Gang of Four |
| [Aggregator Microservices](aggregator-microservices) | Architectural | Cloud distributed |
| [Ambassador](ambassador) | Structural | Decoupling |
| [API Gateway](api-gateway) | Architectural | Cloud distributed, Decoupling |
| [Arrange/Act/Assert](arrange-act-assert) | Idiom | Testing |
| [Async Method Invocation](async-method-invocation) | Concurrency | Reactive |
| [Balking](balking) | Concurrency | Decoupling |
| [Bridge](bridge) | Structural | Gang of Four |
| [Builder](builder) | Creational | Gang of Four |
| [Business Delegate](business-delegate) | Structural | Decoupling |
| [Bytecode](bytecode) | Behavioral | Game programming |
| [Caching](caching) | Behavioral | Performance |
| [Callback](callback) | Idiom | Reactive |
| [Chain of Responsibility](chain-of-responsibility) | Behavioral | Gang of Four |
| [Circuit Breaker](circuit-breaker) | Behavioral | Performance, Decoupling |
| [Cloud Static Content Hosting](cloud-static-content-hosting) | Cloud | Cloud distributed |
| [Collection Pipeline](collection-pipeline) | Functional | Reactive |
| [Combinator](combinator) | Idiom | Reactive |
| [Command](command) | Behavioral | Gang of Four |
| [Commander](commander) | Concurrency | Cloud distributed |
| [Composite](composite) | Structural | Gang of Four |
| [Composite Entity](composite-entity) | Structural | Enterprise Integration Pattern |
| [Converter](converter) | Creational | Decoupling |
| [Command Query Responsibility Segregation](command-query-responsibility-segregation) | Architectural | Performance, Cloud distributed |
| [Data Access Object](data-access-object) | Architectural | Data access |
| [Data Bus](data-bus) | Architectural | Decoupling |
| [Data Locality](data-locality) | Behavioral | Performance, Game programming |
| [Data Mapper](data-mapper) | Architectural | Decoupling |
| [Data Transfer Object](data-transfer-object) | Architectural | Performance |
| [Decorator](decorator) | Structural | Gang of Four, Extensibility |
| [Delegation](delegation) | Structural | Decoupling |
| [Dependency Injection](dependency-injection) | Creational | Decoupling |
| [Dirty Flag](dirty-flag) | Behavioral | Performance, Game programming |
| [Double Buffer](double-buffer) | Behavioral | Performance, Game programming |
| [Double Checked Locking](double-checked-locking) | Idiom | Performance |
| [Double Dispatch](double-dispatch) | Idiom | Extensibility |
| [EIP Aggregator](eip-aggregator) | Integration | Enterprise Integration Pattern |
| [EIP Message Channel](eip-message-channel) | Integration | Enterprise Integration Pattern |
| [EIP Publish and Subscribe](eip-publish-and-subscribe) | Integration | Enterprise Integration Pattern |
| [EIP Splitter](eip-splitter) | Integration | Enterprise Integration Pattern |
| [EIP Wire Tap](eip-wire-tap) | Integration | Enterprise Integration Pattern |
| [Event Aggregator](event-aggregator) | Structural | Reactive |
| [Event Based Asynchronous](event-based-asynchronous) | Concurrency | Reactive |
| [Event Driven Architecture](event-driven-architecture) | Architectural | Reactive |
| [Event Queue](event-queue) | Concurrency | Game programming |
| [Event Sourcing](event-sourcing) | Architectural | Performance |
| [Execute Around](execute-around) | Idiom | Extensibility |
| [Extension Objects](extension-objects) | Behavioral | Extensibility |
| [Facade](facade) | Structural | Gang of Four, Decoupling |
| [Factory](factory) | Creational | Gang of Four |
| [Factory kit](factory-kit) | Creational | Extensibility |
| [Factory Method](factory-method) | Creational | Gang of Four, Extensibility |
| [Fan-Out/Fan-In](fanout-fanin) | Integration | Microservices |
| [Feature Toggle](feature-toggle) | Behavioral | Extensibility |
| [Filterer](filterer) | Functional | Extensibility |
| [Fluent Interface](fluent-interface) | Functional | Reactive |
| [Flux](flux) | Structural | Decoupling |
| [Flyweight](flyweight) | Structural | Gang of Four, Performance |
| [Front Controller](front-controller) | Structural | Decoupling |
| [Game Loop](game-loop) | Behavioral | Game programming |
| [Guarded Suspension](guarded-suspension) | Concurrency | Decoupling |
| [Half-Sync Half-Async](half-sync-half-async) | Concurrency | Performance |
| [Hexagonal](hexagonal) | Architectural | Decoupling |
| [Intercepting Filter](intercepting-filter) | Behavioral | Decoupling |
| [Interpreter](interpreter) | Behavioral | Gang of Four |
| [Iterator](iterator) | Behavioral | Gang of Four |
| [Layers](layers) | Architectural | Decoupling |
| [Lazy Loading](lazy-loading) | Idiom | Performance |
| [Leader Election](leader-election) | Behavioral | Cloud distributed |
| [Leader Followers](leader-followers) | Concurrency | Performance |
| [Lockable Object](lockable-object) | Concurrency | Performance |
| [Marker Interface](marker-interface) | Structural | Decoupling |
| [Master Worker](master-worker) | Concurrency | Performance |
| [Mediator](mediator) | Behavioral | Gang of Four, Decoupling |
| [Memento](memento) | Behavioral | Gang of Four |
| [Model View Controller](model-view-controller) | Architectural | Decoupling |
| [Model View Presenter](model-view-presenter) | Architectural | Decoupling |
| [Model View ViewModel](model-view-viewmodel) | Architectural | Decoupling |
| [Module](module) | Structural | Decoupling |
| [Monad](monad) | Functional | Reactive |
| [Monostate](monostate) | Creational | Instantiation |
| [Multiton](multiton) | Creational | Instantiation |
| [Mute Idiom](mute-idiom) | Idiom | Decoupling |
| [Naked Objects](naked-objects) | Architectural | Decoupling |
| [Null Object](null-object) | Behavioral | Extensibility |
| [Object Mother](object-mother) | Creational | Instantiation |
| [Object Pool](object-pool) | Creational | Performance, Game programming |
| [Observer](observer) | Behavioral | Gang of Four, Reactive |
| [Page Object](page-object) | Structural | Decoupling |
| [Parameter Object](parameter-object) | Behavioral | Extensibility |
| [Partial Response](partial-response) | Behavioral | Decoupling |
| [Pipeline](pipeline) | Behavioral | Decoupling |
| [Poison Pill](poison-pill) | Behavioral | Cloud distributed, Reactive |
| [Presentation Model](presentation-model) | Behavioral | Decoupling |
| [Priority Queue](priority-queue) | Behavioral | Decoupling |
| [Private Class Data](private-class-data) | Idiom | Data access |
| [Producer Consumer](producer-consumer) | Concurrency | Reactive |
| [Promise](promise) | Concurrency | Reactive |
| [Property](property) | Creational | Instantiation |
| [Prototype](prototype) | Creational | Gang of Four, Instantiation |
| [Proxy](proxy) | Structural | Gang of Four, Decoupling |
| [Queue Based Load Leveling](queue-based-load-leveling) | Concurrency | Performance, Decoupling |
| [Reactor](reactor) | Concurrency | Performance, Reactive |
| [Reader Writer Lock](reader-writer-lock) | Concurrency | Performance |
| [Registry](registry) | Creational | Instantiation |
| [Repository](repository) | Architectural | Data access |
| [Resource Acquisition Is Initialization](resource-acquisition-is-initialization) | Idiom | Data access |
| [Retry](retry) | Behavioral | Performance |
| [Role Object](role-object) | Structural | Extensibility |
| [Saga](saga) | Concurrency | Cloud distributed |
| [Semaphore](semaphore) | Concurrency | Performance |
| [Separated Interface](separated-interface) | Structural | Decoupling |
| [Servant](servant) | Behavioral | Decoupling |
| [Serverless](serverless) | Architectural | Cloud distributed |
| [Service Layer](service-layer) | Architectural | Data access |
| [Service Locator](service-locator) | Architectural | Performance, Game programming |
| [Sharding](sharding) | Behavioral | Performance, Cloud distributed |
| [Singleton](singleton) | Creational | Gang of Four |
| [Spatial Partition](spatial-partition) | Behavioral | Performance, Game programming |
| [Special Case](special-case) | Behavioral | Extensibility |
| [Specification](specification) | Behavioral | Data access |
| [State](state) | Behavioral | Gang of Four |
| [Step Builder](step-builder) | Creational | Instantiation |
| [Strangler](strangler) | Structural | Cloud distributed, Extensibility |
| [Strategy](strategy) | Behavioral | Gang of Four |
| [Subclass Sandbox](subclass-sandbox) | Behavioral | Game programming |
| [Table Module](table-module) | Structural | Data access |
| [Template Method](table-module) | Behavioral | Gang of Four |
| [Thread Pool](thread-pool) | Concurrency | Performance |
| [Throttling](throttling) | Behavioral | Performance |
| [Thread Local Storage](thread-local-storage) | Idiom | Performance |
| [Tolerant Reader](tolerant-reader) | Integration | Decoupling |
| [Trampoline](trampoline) | Behavioral | Performance |
| [Transaction Script](transaction-script) | Behavioral | Data access |
| [Twin](twin) | Structural | Extensibility |
| [Type Object](type-object) | Behavioral | Game programming, Extensibility |
| [Unit of Work](unit-of-work) | Architectural | Data access |
| [Update Method](update-method) | Behavioral | Game programming |
| [Value Object](value-object) | Creational | Instantiation |
| [Version Number](version-number) | Concurrency | Data access, Microservices |
| [Visitor](visitor) | Behavioral | Gang of Four |

@ -1,5 +1,8 @@
---
layout: pattern
title: Intercepting Filter
folder: intercepting-filter
permalink: /patterns/intercepting-filter/
categories: Behavioral
language: en
tags:

@ -1,5 +1,8 @@
---
layout: pattern
title: Interpreter
folder: interpreter
permalink: /patterns/interpreter/
categories: Behavioral
language: en
tags:

@ -1,5 +1,8 @@
---
layout: pattern
title: Iterator
folder: iterator
permalink: /patterns/iterator/
categories: Behavioral
language: en
tags:

@ -1,6 +1,10 @@
---
layout: pattern
title: Layers
category: Architectural
folder: layers
permalink: /patterns/layers/
pumlformat: svg
categories: Architectural
language: en
tags:
- Decoupling

@ -1,6 +1,9 @@
---
layout: pattern
title: Lazy Loading
category: Idiom
folder: lazy-loading
permalink: /patterns/lazy-loading/
categories: Idiom
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Leader Election
category: Behavioral
folder: leader-election
permalink: /patterns/leader-election/
categories: Behavioral
language: en
tags:
- Cloud distributed

@ -1,6 +1,9 @@
---
layout: pattern
title: Leader/Followers
category: Concurrency
folder: leader-followers
permalink: /patterns/leader-followers/
categories: Concurrency
language: en
tags:
- Performance

@ -1,6 +1,9 @@
---
layout: pattern
title: Adapter
category: Structural
folder: adapter
permalink: /patterns/adapter/ko
categories: Structural
language: ko
tags:
- Gang of Four
@ -93,7 +96,7 @@ captain.row();
## 클레스 다이어그램
![alt text](etc/adapter.urm.png)
![alt text](https://github.com/warp125/java-design-patterns/blob/master/adapter/etc/adapter.urm.png?raw=true)
## 적용 가능성

Binary file not shown.

Before

(image error) Size: 25 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Factory
category: Creational
folder: factory
permalink: /patterns/factory/ko
categories: Creational
language: ko
tags:
- Gang of Four
@ -104,7 +107,7 @@ This Ferrari.
## 클래스 다이어그램
![alt text](etc/factory.urm.png)
![alt text](https://github.com/iluwatar/java-design-patterns/blob/master/factory/etc/factory.urm.png)
## 적용 가능성

Binary file not shown.

Before

(image error) Size: 29 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Observer
category: Behavioral
folder: observer
permalink: /patterns/observer/ko
categories: Behavioral
language: ko
tags:
- Gang Of Four
@ -134,7 +137,7 @@ The hobbits are facing sunny weather now
## 클래스 다이어그램
![alt text](etc/observer.png)
![alt text](https://github.com/iluwatar/java-design-patterns/blob/master/observer/etc/observer.png)
## 적용 가능성

Binary file not shown.

Before

(image error) Size: 18 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Prototype
category: Creational
folder: prototype
permalink: /patterns/prototype/ko
categories: Creational
language: ko
tags:
- Gang Of Four
@ -64,7 +67,7 @@ System.out.println(cloned.getName()); // Dolly
## 클래스 다이어그램
![alt text](etc/prototype.urm.png)
![alt text](https://github.com/iluwatar/java-design-patterns/blob/master/prototype/etc/prototype.urm.png)
## 적용 가능성

Binary file not shown.

Before

(image error) Size: 79 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Singleton
category: Creational
folder: singleton
permalink: /patterns/singleton/ko
categories: Creational
language: ko
tags:
- Gang of Four
@ -46,7 +49,7 @@ assertEquals(enumIvoryTower1, enumIvoryTower2); // true
## 클래스 다이어그램
![alt text](etc/singleton.urm.png)
![alt text](https://github.com/iluwatar/java-design-patterns/blob/master/singleton/etc/singleton.urm.png)
## 적용 가능성

Binary file not shown.

Before

(image error) Size: 46 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Strategy
category: Behavioral
folder: strategy
permalink: /patterns/strategy/ko
categories: Behavioral
language: ko
tags:
- Gang of Four
@ -160,7 +163,7 @@ public class LambdaStrategy {
## 클래스 다이어그램
![alt text](etc/strategy_urm.png "Strategy")
![alt text](../../../strategy/etc/strategy_urm.png "Strategy")
## 적용 가능성

Binary file not shown.

Before

(image error) Size: 140 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Singleton
category: Creational
folder: singleton
permalink: /patterns/singleton/tr
categories: Creational
language: tr
tags:
- Gang of Four
@ -48,7 +51,7 @@ assertEquals(enumIvoryTower1, enumIvoryTower2); // true
## Sınıf diagramı
![alt text](etc/singleton.urm.png)
![alt text](https://github.com/iluwatar/java-design-patterns/blob/master/singleton/etc/singleton.urm.png)
## Uygulanabilirlik

Binary file not shown.

Before

(image error) Size: 46 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Abstract Document
category: Structural
folder: abstract-document
permalink: /patterns/abstract-document/
categories: Structural
language: zh
tags:
- Extensibility
@ -163,7 +166,7 @@ public class Car extends AbstractDocument implements HasModel, HasPrice, HasPart
## 类图
![alt text](etc/abstract-document.png "Abstract Document Traits and Domain")
![alt text](../../../abstract-document/etc/abstract-document.png "Abstract Document Traits and Domain")
## 适用性

Binary file not shown.

Before

(image error) Size: 94 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Abstract Factory
category: Creational
folder: abstract-factory
permalink: /patterns/abstract-factory/
categories: Creational
language: zh
tags:
- Gang of Four
@ -165,7 +168,7 @@ public static void main(String[] args) {
## 类图
![alt text](etc/abstract-factory.urm.png "Abstract Factory class diagram")
![alt text](../../../abstract-factory/etc/abstract-factory.urm.png "Abstract Factory class diagram")
## 适用性

Binary file not shown.

Before

(image error) Size: 80 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Active Object
category: Concurrency
folder: active-object
permalink: /patterns/active-object/
categories: Concurrency
language: zh
tags:
- Performance
@ -119,4 +122,4 @@ public class Orc extends ActiveCreature {
## 类图
![alt text](etc/active-object.urm.png "Active Object class diagram")
![alt text](../../../active-object/etc/active-object.urm.png "Active Object class diagram")

Binary file not shown.

Before

(image error) Size: 19 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Acyclic Visitor
category: Behavioral
folder: acyclic-visitor
permalink: /patterns/acyclic-visitor/
categories: Behavioral
language: zh
tags:
- Extensibility
@ -120,7 +123,7 @@ public class ConfigureForUnixVisitor implements ZoomVisitor {
## 类图
![alt text](etc/acyclic-visitor.png "Acyclic Visitor")
![alt text](../../../acyclic-visitor/etc/acyclic-visitor.png "Acyclic Visitor")
## 适用性

Binary file not shown.

Before

(image error) Size: 48 KiB

@ -1,6 +1,9 @@
---
layout: pattern
title: Adapter
category: Structural
folder: adapter
permalink: /patterns/adapter/
categories: Structural
language: zh
tags:
- Gang of Four
@ -91,7 +94,7 @@ captain.row();
```
## 类图
![alt text](etc/adapter.urm.png "Adapter class diagram")
![alt text](../../../adapter/etc/adapter.urm.png "Adapter class diagram")
## 应用

Some files were not shown because too many files have changed in this diff Show More