@@ -7,24 +7,30 @@ permalink: /patterns/data-bus/ # the permalink to the pattern, to keep this unif
77# both categories and tags are Yaml Lists
88# you can either just pick one or write a list with '-'s
99# usable categories and tags are listed here: https://github.com/iluwatar/java-design-patterns/blob/gh-pages/_config.yml
10- categories: creational # categories of the pattern
10+ categories: Architectural # categories of the pattern
1111tags: # tags of the pattern
12- - best
13- - ever
14- - awesome
12+ - Java
13+ - Difficulty-Intermediate
1514---
1615
1716## Intent
18- Makes your code awesome
1917
20- ![ alt text] ( ./etc/best_pattern.png " Best Pattern Ever ")
18+ Allows send of messages/events between components of an application
19+ without them needing to know about each other. They only need to know
20+ about the type of the message/event being sent.
21+
22+ ![ data bus pattern uml diagram] ( ./etc/data-bus.urm.png " Data Bus pattern ")
2123
2224## Applicability
23- Use the Best Pattern Ever pattern when
25+ Use Data Bus pattern when
2426
25- * you want to be the best
26- * you need to ...
27+ * you want your components to decide themselves which messages/events they want to receive
28+ * you want to have many-to-many communication
29+ * you want your components to know nothing about each other
2730
28- ## Real world examples
31+ ## Related Patterns
32+ Data Bus is similar to
2933
30- * [ Nowhere] ( http://no.where.com )
34+ * Mediator pattern with Data Bus Members deciding for themselves if they want to accept any given message
35+ * Observer pattern but supporting many-to-many communication
36+ * Publish/Subscribe pattern with the Data Bus decoupling the publisher and the subscriber
0 commit comments